[INFO] cloning repository https://github.com/bungcip/cendol
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/bungcip/cendol" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbungcip%2Fcendol", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbungcip%2Fcendol'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 9ff8659fe8b4629455345d866ca75836df38870c
[INFO] testing bungcip/cendol against master#cced03bfd61a304243a34504618ecec86c17063f for pr-154065-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbungcip%2Fcendol" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/bungcip/cendol
[INFO] finished tweaking git repo https://github.com/bungcip/cendol
[INFO] tweaked toml for git repo https://github.com/bungcip/cendol written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/bungcip/cendol on toolchain cced03bfd61a304243a34504618ecec86c17063f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/bungcip/cendol already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded symbol_table v0.5.0
[INFO] [stderr]   Downloaded jiff-static v0.2.27
[INFO] [stderr]   Downloaded cranelift-control v0.132.0
[INFO] [stderr]   Downloaded cranelift-object v0.132.0
[INFO] [stderr]   Downloaded cranelift-module v0.132.0
[INFO] [stderr]   Downloaded cranelift-bitset v0.132.0
[INFO] [stderr]   Downloaded cranelift-codegen-shared v0.132.0
[INFO] [stderr]   Downloaded cranelift-srcgen v0.132.0
[INFO] [stderr]   Downloaded cranelift v0.132.0
[INFO] [stderr]   Downloaded cranelift-entity v0.132.0
[INFO] [stderr]   Downloaded cranelift-assembler-x64 v0.132.0
[INFO] [stderr]   Downloaded cranelift-assembler-x64-meta v0.132.0
[INFO] [stderr]   Downloaded cranelift-bforest v0.132.0
[INFO] [stderr]   Downloaded cranelift-frontend v0.132.0
[INFO] [stderr]   Downloaded wasmtime-internal-core v45.0.0
[INFO] [stderr]   Downloaded cranelift-isle v0.132.0
[INFO] [stderr]   Downloaded zerocopy-derive v0.8.49
[INFO] [stderr]   Downloaded cranelift-codegen-meta v0.132.0
[INFO] [stderr]   Downloaded regalloc2 v0.15.1
[INFO] [stderr]   Downloaded zerocopy v0.8.49
[INFO] [stderr]   Downloaded object v0.39.1
[INFO] [stderr]   Downloaded gimli v0.33.0
[INFO] [stderr]   Downloaded jiff v0.2.27
[INFO] [stderr]   Downloaded cranelift-codegen v0.132.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 00f7edfc7a1f5bde0b9f0f435e8493446bf1da3a35d16eef198547140e640fa0
[INFO] running `Command { std: "docker" "start" "-a" "00f7edfc7a1f5bde0b9f0f435e8493446bf1da3a35d16eef198547140e640fa0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "00f7edfc7a1f5bde0b9f0f435e8493446bf1da3a35d16eef198547140e640fa0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "00f7edfc7a1f5bde0b9f0f435e8493446bf1da3a35d16eef198547140e640fa0", kill_on_drop: false }`
[INFO] [stdout] 00f7edfc7a1f5bde0b9f0f435e8493446bf1da3a35d16eef198547140e640fa0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8a0849107052d5a257b8254da7cc0209a7e7c461881fbd18453062bcd166f4fb
[INFO] running `Command { std: "docker" "start" "-a" "8a0849107052d5a257b8254da7cc0209a7e7c461881fbd18453062bcd166f4fb", kill_on_drop: false }`
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling cranelift-srcgen v0.132.0
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]    Compiling wasmtime-internal-core v45.0.0
[INFO] [stderr]    Compiling cranelift-isle v0.132.0
[INFO] [stderr]    Compiling cranelift-codegen-shared v0.132.0
[INFO] [stderr]    Compiling log v0.4.30
[INFO] [stderr]    Compiling memchr v2.8.1
[INFO] [stderr]    Compiling target-lexicon v0.13.5
[INFO] [stderr]    Compiling bumpalo v3.20.3
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling rustc-hash v2.1.2
[INFO] [stderr]    Compiling arbitrary v1.4.2
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling cranelift-assembler-x64-meta v0.132.0
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling object v0.39.1
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling cranelift-control v0.132.0
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling cranelift-codegen-meta v0.132.0
[INFO] [stderr]    Compiling jiff v0.2.27
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling annotate-snippets v0.12.16
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling cranelift-assembler-x64 v0.132.0
[INFO] [stderr]    Compiling cranelift-bitset v0.132.0
[INFO] [stderr]    Compiling cranelift-entity v0.132.0
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling gimli v0.33.0
[INFO] [stderr]    Compiling cranelift-bforest v0.132.0
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling cranelift-codegen v0.132.0
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling thin-vec v0.2.18
[INFO] [stderr]    Compiling symbol_table v0.5.0
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling regalloc2 v0.15.1
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling env_filter v1.0.1
[INFO] [stderr]    Compiling env_logger v0.11.10
[INFO] [stderr]    Compiling cranelift-module v0.132.0
[INFO] [stderr]    Compiling cranelift-frontend v0.132.0
[INFO] [stderr]    Compiling cranelift-object v0.132.0
[INFO] [stderr]    Compiling cranelift v0.132.0
[INFO] [stderr]    Compiling cendol v0.4.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 21s
[INFO] running `Command { std: "docker" "inspect" "8a0849107052d5a257b8254da7cc0209a7e7c461881fbd18453062bcd166f4fb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8a0849107052d5a257b8254da7cc0209a7e7c461881fbd18453062bcd166f4fb", kill_on_drop: false }`
[INFO] [stdout] 8a0849107052d5a257b8254da7cc0209a7e7c461881fbd18453062bcd166f4fb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a4c84e15e5c4beb892ccc81255d8e57761257a1556d83869c4cd0269ac600942
[INFO] running `Command { std: "docker" "start" "-a" "a4c84e15e5c4beb892ccc81255d8e57761257a1556d83869c4cd0269ac600942", kill_on_drop: false }`
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling zerocopy v0.8.49
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling zerocopy-derive v0.8.49
[INFO] [stderr]    Compiling cc v1.2.62
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling either v1.16.0
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling page_size v0.6.0
[INFO] [stderr]    Compiling console v0.16.3
[INFO] [stderr]    Compiling unsafe-libyaml v0.2.11
[INFO] [stderr]    Compiling similar v2.7.0
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling thin-vec v0.2.18
[INFO] [stderr]    Compiling symbol_table v0.5.0
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling wasmtime-internal-core v45.0.0
[INFO] [stderr]    Compiling regalloc2 v0.15.1
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling cranelift-bitset v0.132.0
[INFO] [stderr]    Compiling gimli v0.33.0
[INFO] [stderr]    Compiling object v0.39.1
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling alloca v0.4.0
[INFO] [stderr]    Compiling cranelift-entity v0.132.0
[INFO] [stderr]    Compiling cranelift-bforest v0.132.0
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling criterion-plot v0.8.2
[INFO] [stderr]    Compiling insta v1.47.2
[INFO] [stderr]    Compiling cranelift-codegen v0.132.0
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling criterion v0.8.2
[INFO] [stderr]    Compiling cranelift-module v0.132.0
[INFO] [stderr]    Compiling cranelift-frontend v0.132.0
[INFO] [stderr]    Compiling cranelift-object v0.132.0
[INFO] [stderr]    Compiling cranelift v0.132.0
[INFO] [stderr]    Compiling cendol v0.4.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 07s
[INFO] running `Command { std: "docker" "inspect" "a4c84e15e5c4beb892ccc81255d8e57761257a1556d83869c4cd0269ac600942", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a4c84e15e5c4beb892ccc81255d8e57761257a1556d83869c4cd0269ac600942", kill_on_drop: false }`
[INFO] [stdout] a4c84e15e5c4beb892ccc81255d8e57761257a1556d83869c4cd0269ac600942
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 79c72986605594dd1824627be4bb2cd6281bbeb3dd225de33060c6d0e17f60a3
[INFO] running `Command { std: "docker" "start" "-a" "79c72986605594dd1824627be4bb2cd6281bbeb3dd225de33060c6d0e17f60a3", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.22s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/cendol-ec5129386a89747b)
[INFO] [stdout] 
[INFO] [stdout] running 1504 tests
[INFO] [stdout] test ast::literal::tests::test_intern_and_get_int ... ok
[INFO] [stdout] test ast::literal::tests::test_intern_and_get_float ... ok
[INFO] [stdout] test ast::literal::tests::test_literal_coverage ... ok
[INFO] [stdout] test ast::literal_parsing::tests::test_float_literal_suffixes ... ok
[INFO] [stdout] test ast::literal_parsing::tests::test_escape_edge_cases ... ok
[INFO] [stdout] test ast::literal_parsing::tests::test_escape_sequences ... ok
[INFO] [stdout] test ast::literal_parsing::tests::test_hex_float_edge_cases ... ok
[INFO] [stdout] test ast::literal_parsing::tests::test_uppercase_hex_literals ... ok
[INFO] [stdout] test codegen::link_gen::tests::test_link_empty_object_files ... ok
[INFO] [stdout] test codegen::link_gen::tests::test_link_error_display ... ok
[INFO] [stdout] test codegen::mir_gen_ops::tests::test_mir_ops_mapping ... ok
[INFO] [stdout] test driver::cli::tests::test_cli_config_features ... ok
[INFO] [stdout] test lang_options::tests::test_c_standard_default ... ok
[INFO] [stdout] test lang_options::tests::test_c_standard_from_str ... ok
[INFO] [stdout] test lang_options::tests::test_c_standard_is_c11 ... ok
[INFO] [stdout] test pp::preprocessor::tests::test_hide_set_table ... ok
[INFO] [stdout] test driver::cli::tests::test_path_or_buffer ... ok
[INFO] [stdout] test pp::pp_lexer::tests::test_lex_identifier_splice_fallback ... ok
[INFO] [stdout] test driver::cli::tests::test_cli_into_config_and_validation ... ok
[INFO] [stdout] test pp::error::tests::test_error_formatting_and_diagnostic ... ok
[INFO] [stdout] test pp::error::tests::test_error_hints ... ok
[INFO] [stdout] test source_manager::tests::test_builtin ... ok
[INFO] [stdout] test source_manager::tests::test_empty ... ok
[INFO] [stdout] test pp::pp_lexer::tests::test_de_splice_utf8 ... ok
[INFO] [stdout] test source_manager::tests::test_sourcespan_display ... ok
[INFO] [stdout] test pp::types::tests::test_hidesettable_methods ... ok
[INFO] [stdout] test source_manager::tests::test_sourceloc_default ... ok
[INFO] [stdout] test pp::pp_lexer::tests::test_lex_identifier_fast_path ... ok
[INFO] [stdout] test pp::preprocessor::tests::test_is_directive ... ok
[INFO] [stdout] test pp::pp_lexer::tests::test_fast_skip_to_directive ... ok
[INFO] [stdout] test driver::cli::tests::test_cli_dump_flags_coverage ... ok
[INFO] [stdout] test driver::cli::tests::test_cli_ftrapv ... ok
[INFO] [stderr] warning: inline assembly is currently ignored by cendol [-Winline-asm]
[INFO] [stdout] test tests::codegen_asm::test_asm_warning ... ok
[INFO] [stderr]  --> example.c:3:11
[INFO] [stdout] test tests::codegen_atomic::test_atomic_compound_assignment_mir ... ok
[INFO] [stderr]   |
[INFO] [stderr] 3 |           asm("fninit");
[INFO] [stderr]   |           ^^^^^^^^^^^^^^
[INFO] [stdout] test tests::codegen_atomic::test_atomic_inc_dec_mir ... ok
[INFO] [stdout] test tests::codegen_abi::test_fixed_struct_param ... ok
[INFO] [stdout] test tests::codegen_atomic::test_atomic_load_store_mir ... ok
[INFO] [stdout] test tests::codegen_abi::test_hfa_packing ... ok
[INFO] [stderr] warning: inline assembly is currently ignored by cendol [-Winline-asm]
[INFO] [stderr]  --> test.c:5:11
[INFO] [stdout] test tests::codegen_atomic::test_atomic_codegen ... ok
[INFO] [stderr]   |
[INFO] [stderr] 5 |           asm("fninit");
[INFO] [stderr]   |           ^^^^^^^^^^^^^^
[INFO] [stdout] test driver::cli::tests::test_cli_fwrapv ... ok
[INFO] [stdout] test tests::codegen_basics::test_array_with_large_zero_init ... ok
[INFO] [stderr] warning: implicit conversion from 'unsigned int' to 'int' changes value from 2147549184 to -2147418112 [-Wconstant-conversion]
[INFO] [stderr]  --> example.c:4:21
[INFO] [stderr]   |
[INFO] [stderr] 4 |             int b = 0x80010000;
[INFO] [stderr]   |                     ^^^^^^^^^^
[INFO] [stdout] test tests::codegen_basics::test_hex_float_negative_exponent ... ok
[INFO] [stdout] test tests::codegen_basics::test_constant_range_validation ... ok
[INFO] [stdout] test tests::codegen_basics::test_function_pointer_address_of ... ok
[INFO] [stdout] test tests::codegen_basics::test_string_literal_pointer_cast_ ... ok
[INFO] [stdout] test tests::codegen_basics::test_thread_local_codegen ... ok
[INFO] [stdout] test tests::codegen_basics::test_struct_identity_cast_cranelift_ir ... ok
[INFO] [stdout] test tests::codegen_basics::test_float_to_char_conversion ... ok
[INFO] [stdout] test tests::codegen_basics::test_f128_constant_promotion ... ok
[INFO] [stdout] test tests::codegen_basics::test_boolean_logic_lowering ... ok
[INFO] [stdout] test codegen::mir_gen_ops::tests::test_mir_ops_mapping_panics ... ok
[INFO] [stdout] test source_manager::tests::test_source_manager_get_buffer_arc_invalid ... ok
[INFO] [stdout] test tests::codegen_alignas::test_local_alignas_large ... ok
[INFO] [stdout] test tests::codegen_bitfield::test_bitfield_assign_eval ... ok
[INFO] [stdout] test tests::codegen_bitfield::test_bitfield_mixed_types ... ok
[INFO] [stdout] test tests::codegen_bitfield::test_bitfield_local_init ... ok
[INFO] [stdout] test tests::codegen_bitfield::test_bitfield_assignment ... ok
[INFO] [stdout] test tests::codegen_alignas::test_local_alignas ... ok
[INFO] [stdout] test tests::codegen_alignas::test_local_alignas_8 ... ok
[INFO] [stdout] test tests::codegen_asm::test_asm_ignored ... ok
[INFO] [stdout] test tests::codegen_bitfield::test_bitfield_compound_assign_eval ... ok
[INFO] [stdout] test tests::codegen_basics::test_thread_local_runtime ... ok
[INFO] [stdout] test tests::codegen_basics::test_func_ptr_global_comparison ... ok
[INFO] [stdout] test tests::codegen_alignas::test_local_alignas_type ... ok
[INFO] [stdout] test tests::codegen_basics::test_array_size_in_tenary ... ok
[INFO] [stdout] test tests::codegen_basics::test_store_truncation_overflow_regression ... ok
[INFO] [stdout] test tests::codegen_alignas::test_local_alignas_on_decl ... ok
[INFO] [stdout] test tests::codegen_builtins::test_builtin_constant_p_runtime ... ok
[INFO] [stdout] test tests::codegen_bitfield::test_bitfield_global_init ... ok
[INFO] [stdout] test tests::codegen_bool_cast::test_bool_cast_function_pointer ... ok
[INFO] [stdout] test tests::codegen_bool_cast::test_bool_cast_global_variable_pointer ... ok
[INFO] [stdout] test tests::codegen_bool_cast::test_bool_cast_negative_to_bool ... ok
[INFO] [stdout] test tests::codegen_builtins::test_builtin_offsetof_anonymous ... ok
[INFO] [stdout] test tests::codegen_bool_cast::test_bool_cast_nonzero_to_bool ... ok
[INFO] [stdout] test tests::codegen_bool_cast::test_bool_cast_zero_to_bool ... ok
[INFO] [stdout] test tests::codegen_builtins::test_builtin_prefetch_side_effects ... ok
[INFO] [stdout] test tests::codegen_builtins::test_builtin_prefetch_codegen ... ok
[INFO] [stdout] test tests::codegen_bool_cast::test_bool_implicit_from_float ... ok
[INFO] [stdout] test tests::codegen_bool_cast::test_bool_increment_normal ... ok
[INFO] [stdout] test tests::codegen_bool_cast::test_bool_cast_global_init ... ok
[INFO] [stdout] test tests::codegen_builtins::test_codegen_choose_expr_basic ... ok
[INFO] [stdout] test tests::codegen_builtins::test_codegen_choose_expr_side_effects ... ok
[INFO] [stdout] test tests::codegen_bitfield::test_enum_bitfield_all_positive ... ok
[INFO] [stdout] test tests::codegen_bool_cast::test_bool_implicit_from_even_int ... ok
[INFO] [stdout] test tests::codegen_builtins::test_builtin_unreachable ... ok
[INFO] [stdout] test tests::codegen_bool_cast::test_bool_increment_bitfield ... ok
[INFO] [stdout] test tests::codegen_bitfield::test_bitfield_packing_overlap ... ok
[INFO] [stdout] test tests::codegen_float::float_to_int_out_of_bounds ... ok
[INFO] [stdout] test tests::codegen_bool_cast::test_bool_implicit_from_pointer ... ok
[INFO] [stdout] test tests::codegen_builtins::test_builtin_offsetof_array ... ok
[INFO] [stdout] test tests::codegen_bitfield::test_enum_bitfield_with_negative ... ok
[INFO] [stdout] test tests::codegen_builtins::test_builtin_offsetof_constant_context ... ok
[INFO] [stderr] warning: address of array 'a' will always evaluate to 'true' [-Wtautological-pointer-compare]
[INFO] [stderr]  --> example.c:4:17
[INFO] [stderr]   |
[INFO] [stderr] 4 |             if (a) {
[INFO] [stderr]   |                 ^
[INFO] [stdout] test tests::codegen_regr::test_array_in_condition_fix ... ok
[INFO] [stdout] test tests::codegen_builtins::test_builtin_offsetof_stddef ... ok
[INFO] [stdout] test tests::codegen_regr::test_array_literal_initialization_fix ... ok
[INFO] [stdout] test tests::codegen_regr::test_arrow_on_array_deref_panic_regression ... ok
[INFO] [stdout] test tests::codegen_builtins::test_builtin_offsetof_simple ... ok
[INFO] [stdout] test tests::codegen_float::test_float_condition_while_nan ... ok
[INFO] [stdout] test tests::codegen_float::test_float_condition_if_nan ... ok
[INFO] [stdout] test tests::codegen_float::test_float_condition_ternary_nan ... ok
[INFO] [stdout] test tests::codegen_builtins::test_builtin_offsetof_nested ... ok
[INFO] [stdout] test tests::codegen_regr::test_deref_hang_regression ... ok
[INFO] [stdout] test tests::codegen_float::test_float_condition_zero ... ok
[INFO] [stdout] test tests::codegen_builtins::test_builtins_bitwise ... ok
[INFO] [stdout] test tests::codegen_global_redeclaration::test_global_extern_then_definition ... ok
[INFO] [stdout] test tests::codegen_regr::test_movi_unsigned_constant_codegen ... ok
[INFO] [stdout] test tests::codegen_global_redeclaration::test_global_static_then_extern ... ok
[INFO] [stdout] test tests::codegen_global_redeclaration::test_global_extern_then_static ... ok
[INFO] [stdout] test tests::codegen_float::test_float_to_bool_cast_nan ... ok
[INFO] [stdout] test tests::codegen_regr::test_nested_struct_compound_literal_init ... ok
[INFO] [stdout] test tests::codegen_structs::test_array_literal_codegen ... ok
[INFO] [stdout] test tests::codegen_global_redeclaration::test_global_tentative_then_extern ... ok
[INFO] [stdout] test tests::codegen_structs::test_compile_struct_pointer_access ... ok
[INFO] [stdout] test tests::codegen_structs::test_compile_union_field_access ... ok
[INFO] [stderr] warning: implicit conversion from 'int' to 'char' changes value from 174 to -82 [-Wconstant-conversion]
[INFO] [stderr]  --> example.c:3:22
[INFO] [stderr]   |
[INFO] [stderr] 3 |             char a = 174;
[INFO] [stderr]   |                      ^^^
[INFO] [stdout] test tests::codegen_switch::test_implicit_constant_conversion_warning ... ok
[INFO] [stdout] test tests::codegen_structs::test_struct_literal_codegen ... ok
[INFO] [stderr] warning: overflow converting case value to switch condition type (256 to 0) [-Wswitch]
[INFO] [stderr]  --> example.c:7:22
[INFO] [stderr]   |
[INFO] [stderr] 7 |                 case 256: a = 3;
[INFO] [stderr]   |                      ^^^warning: overflow converting case value to switch condition type (256 to 0) [-Wswitch]
[INFO] [stderr]  --> example.c:5:22
[INFO] [stderr]   |
[INFO] [stderr] 5 |                 case 256: a = 1; break;
[INFO] [stderr]   |                      ^^^
[INFO] [stderr] warning: overflow converting case value to switch condition type (256 to 0) [-Wswitch]
[INFO] [stderr]  --> example.c:6:22
[INFO] [stderr]   |
[INFO] [stderr] 6 |                 case 256: a = 2; break;
[INFO] [stderr]   |                      ^^^
[INFO] [stderr] error: duplicate case value '256'
[INFO] [stderr]  --> example.c:6:27
[INFO] [stderr]   |
[INFO] [stderr] 6 |                 case 256: a = 2; break;
[INFO] [stderr]   |                           ^^^^^^
[INFO] [stderr] 
[INFO] [stdout] test tests::codegen_switch::test_switch_case_duplicate_after_promotion ... ok
[INFO] [stdout] test tests::codegen_switch::test_switch_case_overflow ... ok
[INFO] [stdout] test tests::codegen_switch::test_switch_unreachable_cases ... ok
[INFO] [stdout] test tests::codegen_regr::test_global_wrap_function_ptr ... ok
[INFO] [stdout] test tests::codegen_global_redeclaration::test_global_extern_then_tentative ... ok
[INFO] [stdout] test tests::codegen_regr::test_global_variable_modification_not_folded ... ok
[INFO] [stdout] test tests::codegen_regr::test_compound_literal_address_at_file_scope ... ok
[INFO] [stdout] test tests::codegen_regr::test_deeply_nested_unary_ops_stack_overflow ... ok
[INFO] [stdout] test tests::codegen_regr::test_global_struct_init_compound_literal ... ok
[INFO] [stdout] test tests::codegen_variadic::test_partial_load_struct_arg ... ok
[INFO] [stdout] test tests::codegen_regr::test_void_cast_on_array_parameter_regression ... ok
[INFO] [stdout] test tests::codegen_regr::test_negative_float_to_int_implicit_cast_regression ... ok
[INFO] [stdout] test tests::codegen_variadic::test_printf_float_signature ... ok
[INFO] [stdout] test tests::codegen_regr::test_integer_truncation_no_panic ... ok
[INFO] [stdout] test tests::codegen_regr::test_vla_static_pointer ... ok
[INFO] [stdout] test tests::codegen_regr::test_label_map_cleared_between_functions ... ok
[INFO] [stdout] test tests::codegen_regr::test_negative_float_to_int_cast_regression ... ok
[INFO] [stdout] test tests::codegen_variadic::test_printf_hfa_mixed_args ... ok
[INFO] [stdout] test tests::codegen_builtins::test_builtin_unreachable_traps ... ok
[INFO] [stdout] test tests::codegen_variadic::test_indirect_variadic_call_validation ... ok
[INFO] [stdout] test tests::codegen_visibility::test_attribute_visibility_codegen ... ok
[INFO] [stdout] test tests::codegen_visibility::test_attribute_visibility_merging_with_hidden_default ... ok
[INFO] [stdout] test tests::codegen_variadic::test_printf_long_double ... ok
[INFO] [stdout] test tests::codegen_visibility::test_compilation_with_hidden_visibility ... ok
[INFO] [stdout] test tests::codegen_visibility::test_lower_mir_linkage_mapping ... ok
[INFO] [stdout] test tests::codegen_visibility::test_pragma_visibility_codegen ... ok
[INFO] [stdout] test tests::codegen_variadic::test_printf_multiple_doubles ... ok
[INFO] [stdout] test tests::codegen_visibility::test_visibility_invalid_cli ... ok
[INFO] [stdout] test tests::codegen_visibility::test_visibility_cli_parsing ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_atomic_ops_and_case_range ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_dump_parsed_ast_with_arrays ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_dump_parsed_ast_simple ... ok
[INFO] [stdout] test tests::codegen_variadic::test_variadic_struct_arg ... ok
[INFO] [stdout] test tests::codegen_variadic::test_printf_mixed_int_double_str ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_dump_parsed_ast_with_chars ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_dump_parsed_ast_with_floats ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_dump_parsed_ast_with_loops ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_dump_parsed_ast_with_structs ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_dump_parsed_ast_with_pointers ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_dump_parsed_ast_with_strings ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_dump_parsed_ast_with_switch ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_dump_parser_ast ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_dump_parser_ast_with_designated_initializers ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_dump_parsed_ast_with_enums ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_dump_parsed_ast_with_conditional ... ok
[INFO] [stdout] test tests::codegen_regr::test_variadic_struct_argument_crash ... ok
[INFO] [stdout] test tests::codegen_variadic::test_printf_double ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_dump_type_registry ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_parsed_ast_access ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_dump_type_registry_with_complex_types ... ok
[INFO] [stdout] test tests::codegen_variadic::test_printf_mixed_long_double ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_dump_parser_ast_with_functions ... ok
[INFO] [stdout] test tests::codegen_variadic::test_local_va_list ... ok
[INFO] [stdout] test tests::codegen_variadic::test_builtin_va_copy ... ok
[INFO] [stdout] test tests::codegen_variadic::test_va_arg_limit_hfa ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_parsed_ast_generic ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_dump_parsed_ast_with_variables ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_parsed_ast_gnu_stmt_expr ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_parsed_ast_compound_literal ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_parsed_ast_labels ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_parser_ast_builtin_offsetof ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_parsed_ast_empty_stmt ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_parser_ast_compound_literal ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_parser_ast_gnu_stmt_expr ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_parsed_ast_static_assert ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_parser_ast_sizeof_alignof ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_parsed_ast_ternary ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_parser_ast_ops ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_parser_ast_control_flow ... ok
[INFO] [stdout] test tests::driver_cli_handling::test_external_object_handling ... ok
[INFO] [stdout] test tests::driver_source_manager::test_line_directive_ord ... ok
[INFO] [stdout] test tests::driver_source_manager::test_line_map_add_entry ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_parser_ast_switch ... ok
[INFO] [stdout] test tests::driver_cli_handling::test_driver_defines ... ok
[INFO] [stdout] test tests::driver_source_manager::test_add_file_error ... ok
[INFO] [stdout] test tests::driver_cli_handling::test_driver_defines_with_value ... ok
[INFO] [stdout] test tests::driver_source_manager::test_line_map_performance_many_lookups ... ok
[INFO] [stdout] test tests::driver_source_manager::test_line_map_presumed_location_before_first_entry ... ok
[INFO] [stdout] test tests::driver_source_manager::test_line_map_presumed_location_filename_only ... ok
[INFO] [stdout] test tests::driver_source_manager::test_line_map_presumed_location_multiple_entries ... ok
[INFO] [stdout] test tests::driver_source_manager::test_line_map_presumed_location_no_mapping ... ok
[INFO] [stdout] test tests::driver_source_manager::test_line_map_presumed_location_with_mapping ... ok
[INFO] [stdout] test tests::driver_source_manager::test_reserved_source_id_behavior ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_loc_max_file_id ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_loc_max_offset ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_parser_ast_labels ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_loc_packing ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_manager_add_buffer ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_manager_edge_cases ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_manager_empty_file ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_manager_file_without_newlines ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_manager_get_buffer ... ok
[INFO] [stdout] test tests::driver_source_manager::test_line_map_add_entry_unsorted - should panic ... ok
[INFO] [stdout] test tests::driver_source_manager::test_line_map_empty ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_parsed_ast_sizeof_alignof ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_manager_get_buffer_invalid_id - should panic ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_manager_get_buffer_arc_invalid_id - should panic ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_parser_ast_access ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_manager_get_file_id ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_parser_ast_generic ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_manager_get_file_info ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_manager_get_line_column ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_scope_of_function_decl ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_manager_get_buffer_reserved_id - should panic ... ok
[INFO] [stdout] test tests::driver_ast_dumper::test_type_registry_complex ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_manager_get_presumed_location ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_manager_multiple_files ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_span_empty ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_span_length_limit ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_manager_get_source_text_invalid_range - should panic ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_span_merge ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_span_new ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_span_new_with_length ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_span_mixed_ids ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_span_new_with_length_offset_overflow - should panic ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_span_new_with_length_limit ... ok
[INFO] [stdout] test tests::driver_warning_formatting::test_diagnostic_engine_writer ... ok
[INFO] [stdout] test tests::driver_source_manager::test_struct_sizes ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_span_source_id ... ok
[INFO] [stderr] warning: This is a custom preprocessor warning [-W#warnings]
[INFO] [stderr]  --> example.c:2:21
[INFO] [stderr]   |
[INFO] [stderr] 2 |             #warning This is a custom preprocessor warning
[INFO] [stdout] test tests::driver_source_manager::test_source_span_offset_overflow - should panic ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_manager_get_source_text ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_manager_get_presumed_location_no_mapping ... ok
[INFO] [stdout] test tests::driver_source_manager::test_source_manager_get_line_column_end_of_file ... ok
[INFO] [stderr]   |                     ^
[INFO] [stdout] test tests::guardian_alias_completeness::test_generic_association_typeof_incomplete_rejected ... ok
[INFO] [stderr] warning: Redefinition of built-in macro '__STDC__' [-Wbuiltin-macro-redefined]
[INFO] [stdout] test tests::driver_warning_formatting::test_warning_attributes_formatting ... ok
[INFO] [stderr]  --> example.c:2:21
[INFO] [stdout] test tests::driver_source_manager::test_source_manager_get_line_column_before_start ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::guardian_alignas_vla::test_alignas_vla_prohibited ... ok
[INFO] [stderr] 2 |             #define __STDC__ 2
[INFO] [stderr]   |                     ^
[INFO] [stderr] error: generic association specifies incomplete type 'struct S'
[INFO] [stderr]  --> example.c:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 |             return _Generic(0, typeof(s): 1, default: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::guardian_alignas_constraints::test_alignas_on_typedef_prohibited ... ok
[INFO] [stderr] error: cannot apply '_Alignof' to a bit-field
[INFO] [stderr]  --> example.c:7:20
[INFO] [stderr]   |
[INFO] [stderr] 7 |             return _Alignof(s.x);
[INFO] [stdout] test tests::guardian_alignas_vla::test_alignas_pointer_to_vla_prohibited ... ok
[INFO] [stdout] test tests::guardian_alignas_constraints::test_alignas_on_function_prohibited ... ok
[INFO] [stderr]   |                    ^^^^^^^^^^^^
[INFO] [stderr] warning: excess elements in array initializer [-Wexcess-initializers]
[INFO] [stderr]  --> example.c:3:24
[INFO] [stderr]   |
[INFO] [stderr] 3 |             int a[3] = {1, [2] = 5, 2};
[INFO] [stderr]   |                        ^^^^^^^^^^^^^^^
[INFO] [stderr] error: generic association specifies variably modified type 'int[*]'
[INFO] [stdout] test tests::guardian_alias_completeness::test_generic_association_typeof_complete_accepted ... ok
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             _Generic(0, typeof(vla): 1, default: 2);
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::guardian_alignof_bitfield::test_alignof_bitfield_prohibited ... ok
[INFO] [stdout] test tests::guardian_alias_completeness::test_generic_association_typeof_vla_rejected ... ok
[INFO] [stdout] test tests::guardian_array_init::test_array_init_designator_excess ... ok
[INFO] [stdout] test tests::driver_warning_formatting::test_warning_builtin_macro_redefined_formatting ... ok
[INFO] [stdout] test tests::driver_warning_formatting::test_warning_hash_warnings_formatting ... ok
[INFO] [stdout] test tests::guardian_array_init::test_array_init_fewer_elements ... ok
[INFO] [stdout] test tests::guardian_array_init::test_array_init_designator_reset ... ok
[INFO] [stdout] test tests::guardian_alignas_constraints::test_alignas_on_bitfield_prohibited ... ok
[INFO] [stderr] warning: excess elements in array initializer [-Wexcess-initializers]
[INFO] [stderr]  --> example.c:3:25
[INFO] [stderr]   |
[INFO] [stderr] 3 |             char s[2] = "abc";
[INFO] [stderr]   |                         ^^^^^
[INFO] [stdout] test tests::guardian_array_init::test_string_init_excess_chars ... ok
[INFO] [stdout] test tests::guardian_alignas_constraints::test_alignas_on_register_prohibited ... ok
[INFO] [stdout] test tests::guardian_array_init::test_string_init_with_room ... ok
[INFO] [stdout] test tests::guardian_alignas_constraints::test_alignas_on_parameter_prohibited ... ok
[INFO] [stdout] test tests::codegen_variadic::test_pass_va_list ... ok
[INFO] [stdout] test tests::guardian_array_init::test_string_init_exact_fit_no_null ... ok
[INFO] [stdout] test tests::guardian_builtin_complex_const::test_builtin_complex_global_init ... ok
[INFO] [stderr] error: Unexpected token: expected ';' after declaration, found {
[INFO] [stderr]  --> example.c:3:33
[INFO] [stderr]   |
[INFO] [stderr] 3 |             static void f(void) {}
[INFO] [stdout] test tests::guardian_bitfield_constraints::test_bitfield_atomic_prohibited ... ok
[INFO] [stderr]   |                                 ^
[INFO] [stderr] warning: excess elements in array initializer [-Wexcess-initializers]
[INFO] [stderr]  --> example.c:3:24
[INFO] [stderr]   |
[INFO] [stderr] 3 |             int a[2] = {1, 2, 3};
[INFO] [stderr]   |                        ^^^^^^^^^
[INFO] [stdout] test tests::guardian_block_scope_func::test_block_scope_extern_func_call ... ok
[INFO] [stdout] test tests::guardian_builtin_complex_const::test_builtin_complex_constant_evaluation ... ok
[INFO] [stdout] test tests::guardian_block_scope_func::test_block_scope_static_func_def_prohibited ... ok
[INFO] [stdout] test tests::guardian_array_init::test_array_init_excess_elements ... ok
[INFO] [stdout] test tests::guardian_block_scope_func::test_block_scope_extern_func_usage ... ok
[INFO] [stdout] test tests::guardian_bitfield_constraints::test_bitfield_width_constraints ... ok
[INFO] [stdout] test tests::guardian_block_scope_func::test_block_scope_static_func_prohibited ... ok
[INFO] [stdout] test tests::guardian_array_init::test_array_init_exact_elements ... ok
[INFO] [stderr] error: type mismatch: expected scalar type, found struct S
[INFO] [stderr]  --> example.c:5:26
[INFO] [stderr]   |
[INFO] [stderr] 5 |             int i = (int)s;
[INFO] [stderr]   |                          ^
[INFO] [stderr] error: type mismatch: expected scalar type, found struct S
[INFO] [stderr]  --> example.c:5:27
[INFO] [stderr]   |
[INFO] [stderr] 5 |             struct S s = (struct S)i;
[INFO] [stderr]   |                           ^^^^^^^^^^
[INFO] [stderr] error: cannot take address of bit-field
[INFO] [stderr]  --> example.c:5:23
[INFO] [stderr]   |
[INFO] [stderr] 5 |             void *p = &__builtin_choose_expr(1, s.x, s.x);
[INFO] [stderr]   |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::guardian_cast_constraints::test_cast_struct_to_int ... ok
[INFO] [stdout] test tests::guardian_cast_constraints::test_cast_int_to_struct ... ok
[INFO] [stderr] error: compound literal specifies incomplete type 'struct S'
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             (struct S){0};
[INFO] [stderr]   |             ^^^^^^^^^^^^^^
[INFO] [stderr] warning: excess elements in record initializer [-Wexcess-initializers]
[INFO] [stderr]  --> example.c:4:23
[INFO] [stderr]   |
[INFO] [stderr] 4 |             (struct S){0};
[INFO] [stderr]   |                       ^^^
[INFO] [stderr] error: incomplete type 'struct S'
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             (struct S){0};
[INFO] [stderr]   |             ^^^^^^^^^^^^^^
[INFO] [stderr] error: compound literal specifies function type 'void()'
[INFO] [stderr]  --> example.c:3:13
[INFO] [stderr]   |
[INFO] [stderr] 3 |             (void(void)){0};
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^
[INFO] [stderr] error: cannot take address of 'register' variable
[INFO] [stderr]  --> example.c:4:23
[INFO] [stderr]   |
[INFO] [stderr] 4 |             void *p = &__builtin_choose_expr(1, x, x);
[INFO] [stderr]   |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::guardian_choose_expr::test_builtin_choose_expr_bitfield_constraints ... ok
[INFO] [stdout] test tests::guardian_choose_expr::test_builtin_choose_expr_lvalue_preservation ... ok
[INFO] [stdout] test tests::guardian_choose_expr::test_builtin_choose_expr_lazy_semantics ... ok
[INFO] [stdout] test tests::guardian_compound_literal_constraints::test_compound_literal_pointer_to_vla_accepted ... ok
[INFO] [stdout] test tests::guardian_compound_literal_constraints::test_compound_literal_array_unknown_size_accepted ... ok
[INFO] [stdout] test tests::guardian_compound_literal_constraints::test_compound_literal_incomplete_type ... ok
[INFO] [stdout] test tests::guardian_compound_literal_constraints::test_compound_literal_function_type_prohibited ... ok
[INFO] [stdout] test tests::guardian_choose_expr::test_builtin_choose_expr_register_constraints ... ok
[INFO] [stdout] test tests::guardian_const_eval_builtins::test_const_eval_bswap ... ok
[INFO] [stdout] test tests::guardian_const_eval_builtins::test_const_eval_builtin_choose_expr_float ... ok
[INFO] [stdout] test tests::guardian_compound_literal_constraints::test_compound_literal_vla_prohibited ... ok
[INFO] [stdout] test tests::guardian_const_eval_builtins::test_const_eval_builtin_inf_nan ... ok
[INFO] [stderr] error: compound literal specifies variably modified type 'int[*]'
[INFO] [stderr]  --> example.c:3:13
[INFO] [stdout] test tests::guardian_bitfield_constraints::test_bitfield_invalid_types ... ok
[INFO] [stderr]   |
[INFO] [stderr] 3 |             (int[n]){0};
[INFO] [stderr]   |             ^^^^^^^^^^^^
[INFO] [stdout] test tests::guardian_enum_compatibility::test_generic_selection_distinguishes_different_enums ... ok
[INFO] [stdout] test tests::guardian_choose_expr::test_builtin_choose_expr_npc_preservation ... ok
[INFO] [stdout] test tests::guardian_function_return_type_constraints::test_function_returning_function_rejected ... ok
[INFO] [stdout] test tests::guardian_const_eval_builtins::test_const_eval_expect ... ok
[INFO] [stdout] test tests::guardian_fam_union_constraints::test_nested_fam_constraints ... ok
[INFO] [stdout] test tests::codegen_trapv::test_trapv_multiplication ... ok
[INFO] [stdout] test tests::guardian_function_return_type_constraints::test_function_returning_array_rejected ... ok
[INFO] [stdout] test tests::guardian_function_return_type_constraints::test_function_returning_pointer_to_array_accepted ... ok
[INFO] [stdout] test tests::guardian_function_return_type_constraints::test_function_returning_pointer_to_function_accepted ... ok
[INFO] [stdout] test tests::guardian_const_eval_builtins::test_const_eval_builtin_choose_expr_inf ... ok
[INFO] [stderr] error: type '_Atomic int' in generic association compatible with previously specified type '_Atomic int'
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic(0, _Atomic int: 1, _Atomic int: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::guardian_fam_union_constraints::test_struct_cannot_contain_union_with_fam ... ok
[INFO] [stderr] note: previous association is here
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic(0, _Atomic int: 1, _Atomic int: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: controlling expression type 'int' not compatible with any generic association
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic(0, _Atomic int: 1, _Atomic int: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: controlling expression in '_Generic' selector matches multiple associations
[INFO] [stderr]  --> example.c:4:20
[INFO] [stderr]   |
[INFO] [stderr] 4 |             return _Generic(p, int(*)[10]: 1, int(*)[20]: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] note: other match is here
[INFO] [stderr]  --> example.c:4:20
[INFO] [stderr]   |
[INFO] [stderr] 4 |             return _Generic(p, int(*)[10]: 1, int(*)[20]: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::guardian_fam_union_constraints::test_union_can_contain_fam_struct ... ok
[INFO] [stdout] test tests::guardian_generic::test_generic_lvalue_conversion_strips_qualifiers ... ok
[INFO] [stdout] test tests::guardian_generic::generic_selection_distinguishes_atomic_types ... ok
[INFO] [stdout] test tests::guardian_generic::test_generic_incomplete_array_allowed ... ok
[INFO] [stdout] test tests::guardian_generic::test_generic_atomic_lvalue_conversion ... ok
[INFO] [stdout] test tests::guardian_generic::test_generic_matches_multiple_associations ... ok
[INFO] [stdout] test tests::guardian_const_eval_builtins::test_const_eval_constant_p ... ok
[INFO] [stderr] error: cannot apply 'sizeof' to a bit-field
[INFO] [stderr]  --> example.c:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 |             return sizeof(_Generic(0, int: s.x));
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::guardian_bitfield_constraints::test_bitfield_valid_types ... ok
[INFO] [stderr] error: type 'int[]*' in generic association compatible with previously specified type 'int[10]*'
[INFO] [stdout] test tests::guardian_generic::test_generic_matches_qualified_pointer_types ... ok
[INFO] [stderr]  --> example.c:4:20
[INFO] [stdout] test tests::guardian_generic::test_generic_selection_lvalue_preservation ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::guardian_generic::test_generic_selection_rejects_compatible_array_types ... ok
[INFO] [stderr] 4 |             return _Generic(&a, int(*)[10]: 1, int(*)[]: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] note: previous association is here
[INFO] [stderr]  --> example.c:4:20
[INFO] [stderr]   |
[INFO] [stderr] 4 |             return _Generic(&a, int(*)[10]: 1, int(*)[]: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: controlling expression in '_Generic' selector matches multiple associations
[INFO] [stderr]  --> example.c:4:20
[INFO] [stderr]   |
[INFO] [stderr] 4 |             return _Generic(&a, int(*)[10]: 1, int(*)[]: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] note: other match is here
[INFO] [stderr]  --> example.c:4:20
[INFO] [stderr]   |
[INFO] [stderr] 4 |             return _Generic(&a, int(*)[10]: 1, int(*)[]: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::guardian_generic::test_generic_selection_npc_preservation ... ok
[INFO] [stdout] test tests::guardian_generic::test_generic_selection_bitfield_constraints ... ok
[INFO] [stdout] test tests::guardian_generic::test_generic_void_allowed ... ok
[INFO] [stdout] test tests::guardian_generic::test_generic_selection_qualifier_compatibility_constraints ... ok
[INFO] [stdout] test tests::guardian_generic::test_generic_selection_register_constraints ... ok
[INFO] [stdout] test tests::guardian_generic::test_generic_incomplete_struct_prohibited ... ok
[INFO] [stdout] test tests::guardian_generic::test_generic_selection_rejects_compatible_enum_type ... ok
[INFO] [stderr] error: type 'enum E' in generic association compatible with previously specified type 'int'
[INFO] [stdout] test tests::guardian_generic::test_generic_selection_rejects_compatible_function_pointers ... ok
[INFO] [stderr]  --> example.c:5:20
[INFO] [stdout] test tests::guardian_generic::test_generic_complete_object_types_allowed ... ok
[INFO] [stderr]   |
[INFO] [stderr] 5 |             return _Generic(0, int: 1, enum E: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] note: previous association is here
[INFO] [stderr]  --> example.c:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 |             return _Generic(0, int: 1, enum E: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: cannot take address of bit-field
[INFO] [stderr]  --> example.c:5:23
[INFO] [stderr]   |
[INFO] [stderr] 5 |             void *p = &_Generic(0, int: s.x);
[INFO] [stderr]   |                       ^^^^^^^^^^^^^^^^^^^^^^error: controlling expression in '_Generic' selector matches multiple associations
[INFO] [stderr]  --> example.c:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 |             return _Generic(0, int: 1, enum E: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] note: other match is here
[INFO] [stderr]  --> example.c:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 |             return _Generic(0, int: 1, enum E: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: type 'int' in generic association compatible with previously specified type 'int'
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic(0, int: 1, int: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] note: previous association is here
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic(0, int: 1, int: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: controlling expression in '_Generic' selector matches multiple associations
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic(0, int: 1, int: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] note: other match is here
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic(0, int: 1, int: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: generic association specifies variably modified type 'int[*]'
[INFO] [stderr]  --> example.c:3:13
[INFO] [stderr]   |
[INFO] [stderr] 3 |             _Generic(0, int[n]: 1, default: 0);
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: cannot take address of 'register' variable
[INFO] [stderr]  --> example.c:4:23
[INFO] [stderr]   |
[INFO] [stderr] 4 |             void *p = &_Generic(0, int: x);
[INFO] [stderr]   |                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: controlling expression type 'struct S' is an incomplete type
[INFO] [stderr]  --> example.c:5:29
[INFO] [stderr]   |
[INFO] [stderr] 5 |             return _Generic(s, default: 1);
[INFO] [stderr]   |                             ^
[INFO] [stderr] error: type 'enum E' in generic association compatible with previously specified type 'int'
[INFO] [stderr]  --> example.c:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 |             return _Generic(0, int: 1, enum E: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] note: previous association is here
[INFO] [stderr]  --> example.c:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 |             return _Generic(0, int: 1, enum E: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: type 'void(int)*' in generic association compatible with previously specified type 'void(int)*'
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic((void(*)(int))0, void(*)(int x): 1, void(*)(int y): 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: controlling expression in '_Generic' selector matches multiple associations
[INFO] [stderr]  --> example.c:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 |             return _Generic(0, int: 1, enum E: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] note: other match is here
[INFO] [stderr]  --> example.c:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 |             return _Generic(0, int: 1, enum E: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] note: previous association is here
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic((void(*)(int))0, void(*)(int x): 1, void(*)(int y): 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: controlling expression in '_Generic' selector matches multiple associations
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic((void(*)(int))0, void(*)(int x): 1, void(*)(int y): 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] note: other match is here
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic((void(*)(int))0, void(*)(int x): 1, void(*)(int y): 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: Invalid operand for unary operation: have 'void*'
[INFO] [stderr]  --> example.c:1:19
[INFO] [stderr]   |
[INFO] [stderr] 1 | void f(void *p) { p++; }
[INFO] [stderr]   |                   ^^^
[INFO] [stderr] error: generic association specifies variably modified type 'int[*]*'
[INFO] [stderr]  --> example.c:3:13
[INFO] [stderr]   |
[INFO] [stderr] 3 |             _Generic(0, int(*)[n]: 1, default: 0);
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: subscript of pointer to incomplete type 'void()'
[INFO] [stderr]  --> example.c:1:33
[INFO] [stderr]   |
[INFO] [stderr] 1 | void f(void); void g() { (void)(&f)[0]; }
[INFO] [stderr]   |                                 ^^
[INFO] [stderr] error: Invalid operand for unary operation: have 'struct S'
[INFO] [stderr]  --> example.c:1:43
[INFO] [stderr]   |
[INFO] [stderr] 1 | struct S { int x; }; void f(struct S s) { --s; }
[INFO] [stderr]   |                                           ^^^
[INFO] [stderr] error: Invalid operand for unary operation: have 'struct S*'
[INFO] [stderr]  --> example.c:1:33
[INFO] [stderr]   |
[INFO] [stderr] 1 | struct S; void f(struct S *p) { ++p; }
[INFO] [stderr]   |                                 ^^^
[INFO] [stderr] error: type mismatch: expected integer type, found double
[INFO] [stderr]  --> example.c:1:26
[INFO] [stderr]   |
[INFO] [stderr] 1 | void f(int *p) { (void)p[1.0]; }
[INFO] [stderr]   |                          ^^^
[INFO] [stderr] error: subscript of pointer to incomplete type 'struct S'
[INFO] [stderr]  --> example.c:1:39
[INFO] [stderr]   |
[INFO] [stderr] 1 | struct S; void f(struct S *p) { (void)p[0]; }
[INFO] [stderr]   |                                       ^
[INFO] [stderr] error: Invalid operand for unary operation: have 'void()*'
[INFO] [stderr]  --> example.c:1:47
[INFO] [stderr]   |
[INFO] [stderr] 1 | void f(void); void g() { void (*p)(void) = f; p--; }
[INFO] [stderr]   |                                               ^^^
[INFO] [stderr] error: incomplete type 'struct S'
[INFO] [stderr]  --> example.c:1:39
[INFO] [stderr]   |
[INFO] [stderr] 1 | struct S; void f(struct S *p) { (void)p[0]; }
[INFO] [stderr]   |                                       ^^^^
[INFO] [stderr] error: incomplete type 'struct S'
[INFO] [stdout] test tests::guardian_increment_completeness::test_postfix_increment_void_pointer_prohibited ... ok
[INFO] [stderr]  --> example.c:5:13
[INFO] [stdout] test tests::guardian_index_completeness::test_subscript_incomplete_array_complete_element_allowed ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::guardian_index_completeness::test_subscript_commutative_allowed ... ok
[INFO] [stderr] 5 |             s1 = s2;
[INFO] [stdout] test tests::guardian_generic::test_generic_function_allowed ... ok
[INFO] [stderr]   |             ^^
[INFO] [stdout] test tests::guardian_increment_completeness::test_prefix_decrement_non_scalar_prohibited ... ok
[INFO] [stdout] test tests::guardian_generic::test_generic_selection_rejects_vla_associations ... ok
[INFO] [stdout] test tests::guardian_increment_completeness::test_prefix_increment_incomplete_struct_pointer_prohibited ... ok
[INFO] [stdout] test tests::guardian_fam_union_constraints::test_union_with_fam_as_last_member_prohibited ... ok
[INFO] [stdout] test tests::guardian_index_completeness::test_subscript_index_non_integer_prohibited ... ok
[INFO] [stdout] test tests::guardian_index_completeness::test_subscript_incomplete_struct_pointer_prohibited ... ok
[INFO] [stdout] test tests::guardian_increment_completeness::test_postfix_decrement_function_pointer_prohibited ... ok
[INFO] [stdout] test tests::guardian_index_completeness::test_subscript_complete_object_allowed ... ok
[INFO] [stdout] test tests::guardian_index_completeness::test_subscript_function_pointer_prohibited ... ok
[INFO] [stdout] test tests::guardian_modifiable_lvalue::test_assignment_to_incomplete_struct ... ok
[INFO] [stderr] error: incomplete type 'void'
[INFO] [stderr]  --> example.c:3:13
[INFO] [stderr]   |
[INFO] [stderr] 3 |             *p = *p;
[INFO] [stderr]   |             ^^
[INFO] [stdout] test tests::guardian_modifiable_lvalue::test_assignment_to_void_lvalue ... ok
[INFO] [stderr] error: cannot assign to read-only location
[INFO] [stderr]  --> example.c:6:13
[INFO] [stderr]   |
[INFO] [stderr] 6 |             s1 = s2;
[INFO] [stderr]   |             ^^
[INFO] [stdout] test tests::guardian_npc_propagation::test_arithmetic_npc_propagation ... ok
[INFO] [stderr] error: cannot assign to read-only location
[INFO] [stdout] test tests::guardian_modifiable_lvalue::test_assignment_to_const_nested_struct ... ok
[INFO] [stderr]  --> example.c:5:13
[INFO] [stdout] test tests::guardian_modifiable_lvalue::test_assignment_to_const_struct ... ok
[INFO] [stderr]   |
[INFO] [stderr] 5 |             s1 = s2;
[INFO] [stderr]   |             ^^
[INFO] [stdout] test tests::guardian_noreturn_switch::test_noreturn_generic_selection_no_fallthrough ... ok
[INFO] [stderr] error: subscript of pointer to incomplete type 'void'
[INFO] [stderr]  --> example.c:1:25
[INFO] [stderr]   |
[INFO] [stderr] 1 | void f(void *p) { (void)p[0]; }
[INFO] [stderr]   |                         ^
[INFO] [stdout] test tests::guardian_npc_propagation::test_choose_expr_npc_propagation ... ok
[INFO] [stdout] test tests::guardian_index_completeness::test_subscript_void_pointer_prohibited ... ok
[INFO] [stderr] error: cannot apply 'offsetof' to a bit-field
[INFO] [stderr]  --> example.c:9:42
[INFO] [stderr]   |
[INFO] [stderr] 9 |             __builtin_offsetof(struct S, b);
[INFO] [stderr]   |                                          ^
[INFO] [stderr] error: cannot assign to read-only location
[INFO] [stderr]  --> example.c:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |             s.x++;
[INFO] [stderr]   |             ^^^
[INFO] [stderr] error: function 'die' declared '_Noreturn' can fall off the end
[INFO] [stderr]  --> example.c:3:9
[INFO] [stderr]   |
[INFO] [stderr] 3 | /         _Noreturn void die(int c) {
[INFO] [stderr] 4 | |             switch (c) {
[INFO] [stderr] 5 | |                 case 1: abort();
[INFO] [stderr] 6 | |                 case 2: abort();
[INFO] [stderr]   | |_________________________________^
[INFO] [stderr] error: incomplete type 'struct S'
[INFO] [stderr]  --> example.c:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |             s1++;
[INFO] [stderr]   |             ^^
[INFO] [stderr] error: Invalid operand for unary operation: have 'struct S'
[INFO] [stderr]  --> example.c:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |             s1++;
[INFO] [stderr]   |             ^^^^
[INFO] [stdout] test tests::guardian_offsetof::test_offsetof_anonymous_bitfield ... ok
[INFO] [stdout] test tests::guardian_modifiable_lvalue::test_increment_const_member ... ok
[INFO] [stdout] test tests::guardian_noreturn_switch::test_noreturn_choose_expr_no_fallthrough ... ok
[INFO] [stdout] test tests::guardian_noreturn_switch::test_noreturn_switch_missing_default_falls_through ... ok
[INFO] [stdout] test tests::guardian_noreturn_switch::test_noreturn_switch_with_default_no_fallthrough ... ok
[INFO] [stdout] test tests::guardian_npc_propagation::test_generic_npc_propagation ... ok
[INFO] [stdout] test tests::guardian_npc_propagation::test_nested_npc_propagation ... ok
[INFO] [stdout] test tests::guardian_modifiable_lvalue::test_increment_incomplete_type ... ok
[INFO] [stderr] error: cannot apply 'offsetof' to a bit-field
[INFO] [stderr]  --> example.c:7:42
[INFO] [stderr]   |
[INFO] [stderr] 7 |             __builtin_offsetof(struct S, a);
[INFO] [stderr]   |                                          ^
[INFO] [stderr] error: function 'die' declared '_Noreturn' can fall off the end
[INFO] [stderr]  --> example.c:3:9
[INFO] [stderr]   |
[INFO] [stderr] 3 | /         _Noreturn void die(int c) {
[INFO] [stderr] 4 | |             switch (c) {
[INFO] [stderr] 5 | |                 case 1: abort();
[INFO] [stderr] 6 | |                 case 2: break;
[INFO] [stderr]   | |_______________________________^
[INFO] [stdout] test tests::guardian_parameter_completeness::test_named_void_parameter_prohibited ... ok
[INFO] [stderr] error: type 'void(const int)*' in generic association compatible with previously specified type 'void(int)*'
[INFO] [stderr]  --> example.c:6:20
[INFO] [stderr]   |
[INFO] [stderr] 6 |             return _Generic(p, P: 0, PC: 1);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] note: previous association is here
[INFO] [stderr]  --> example.c:6:20
[INFO] [stderr]   |
[INFO] [stderr] 6 |             return _Generic(p, P: 0, PC: 1);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: controlling expression in '_Generic' selector matches multiple associations
[INFO] [stderr]  --> example.c:6:20
[INFO] [stderr]   |
[INFO] [stderr] 6 |             return _Generic(p, P: 0, PC: 1);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] note: other match is here
[INFO] [stderr]  --> example.c:6:20
[INFO] [stderr]   |
[INFO] [stderr] 6 |             return _Generic(p, P: 0, PC: 1);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::guardian_offsetof::test_offsetof_bitfield ... ok
[INFO] [stderr] error: cannot apply 'offsetof' to a bit-field
[INFO] [stderr]  --> example.c:8:52
[INFO] [stderr]   |
[INFO] [stderr] 8 |             __builtin_offsetof(struct Outer, inner.a);
[INFO] [stdout] test tests::guardian_parameter_completeness::test_incomplete_struct_parameter_prohibited ... ok
[INFO] [stdout] test tests::guardian_noreturn_switch::test_noreturn_switch_with_break_falls_through ... ok
[INFO] [stdout] test tests::guardian_parameter_completeness::test_void_parameter_in_list_prohibited ... ok
[INFO] [stdout] test tests::guardian_parameter_compatibility::test_function_pointer_const_parameter_compatibility ... ok
[INFO] [stderr]   |                                                    ^error: offsetof of incomplete type 'struct S'
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             __builtin_offsetof(struct S, a);
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::guardian_npc_propagation::test_real_imag_npc_propagation ... ok
[INFO] [stderr] 
[INFO] [stdout] test tests::guardian_offsetof::test_offsetof_incomplete_struct ... ok
[INFO] [stderr] error: cannot take address of 'register' variable
[INFO] [stderr]  --> example.c:4:23
[INFO] [stderr]   |
[INFO] [stderr] 4 |             int *p = &a[0];
[INFO] [stderr]   |                       ^
[INFO] [stderr] error: cannot take address of 'register' variable
[INFO] [stderr]  --> example.c:4:22
[INFO] [stderr]   |
[INFO] [stderr] 4 |             int *p = &a[0];
[INFO] [stderr]   |                      ^^^^^
[INFO] [stderr] error: type 'void(const int*)*' in generic association compatible with previously specified type 'void(int*)*'
[INFO] [stderr]  --> example.c:6:20
[INFO] [stderr]   |
[INFO] [stderr] 6 |             return _Generic(p, P: 0, PA: 1);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::guardian_offsetof::test_offsetof_nested_bitfield ... ok
[INFO] [stderr] note: previous association is here
[INFO] [stderr]  --> example.c:6:20
[INFO] [stderr]   |
[INFO] [stderr] 6 |             return _Generic(p, P: 0, PA: 1);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: controlling expression in '_Generic' selector matches multiple associations
[INFO] [stderr]  --> example.c:6:20
[INFO] [stderr]   |
[INFO] [stderr] 6 |             return _Generic(p, P: 0, PA: 1);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^error: type mismatch: expected const int***, found int***
[INFO] [stderr]  --> example.c:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |             q = p; // Invalid!
[INFO] [stderr]   |             ^^^^^
[INFO] [stderr] error: offsetof of incomplete type 'union U'
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             __builtin_offsetof(union U, a);
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: type mismatch: expected const int**, found int**
[INFO] [stderr]  --> example.c:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |             q = p; // Invalid!
[INFO] [stderr]   |             ^^^^^
[INFO] [stderr] 
[INFO] [stdout] test tests::guardian_parameter_compatibility::test_function_pointer_atomic_parameter_compatibility ... ok
[INFO] [stderr] note: other match is here
[INFO] [stdout] test tests::guardian_pointer_assignment_nested_qualifiers::test_pointer_assignment_nested_qualifiers_multiple_levels ... ok
[INFO] [stderr]  --> example.c:6:20
[INFO] [stdout] test tests::guardian_register_constraints::test_register_array_index_address_prohibited ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::guardian_register_constraints::test_non_register_aggregate_address_allowed ... ok
[INFO] [stderr] 6 |             return _Generic(p, P: 0, PA: 1);
[INFO] [stdout] test tests::guardian_offsetof::test_offsetof_incomplete_union ... ok
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::guardian_pointer_assignment_nested_qualifiers::test_pointer_assignment_nested_qualifiers_prohibited ... ok
[INFO] [stderr] error: cannot take address of 'register' variable
[INFO] [stdout] test tests::guardian_pointer_assignment_nested_qualifiers::test_pointer_assignment_nested_qualifiers_valid ... ok
[INFO] [stderr]  --> example.c:5:22
[INFO] [stdout] test tests::guardian_parameter_compatibility::test_function_pointer_array_parameter_compatibility ... ok
[INFO] [stderr]   |
[INFO] [stderr] 5 |             int *p = &_Generic(0, int: s.x);
[INFO] [stderr]   |                      ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: cannot take address of 'register' variable
[INFO] [stderr]  --> example.c:5:22
[INFO] [stderr]   |
[INFO] [stderr] 5 |             int *p = &__builtin_choose_expr(1, s.x, s.x);
[INFO] [stderr]   |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: cannot take address of 'register' variable
[INFO] [stderr]  --> example.c:5:22
[INFO] [stderr]   |
[INFO] [stderr] 5 |             int *p = &s.x;
[INFO] [stderr]   |                      ^^^^
[INFO] [stderr] error: Invalid application of '_Alignof' to an incomplete type 'void'
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Alignof(void);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^
[INFO] [stderr] error: cannot apply '_Alignof' to a bit-field
[INFO] [stderr]  --> example.c:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 |             return _Alignof(s.x);
[INFO] [stderr]   |                    ^^^^^^^^^^^^
[INFO] [stdout] test tests::guardian_register_constraints::test_register_selection_expression_member_address_prohibited ... ok
[INFO] [stdout] test tests::guardian_register_constraints::test_register_struct_member_address_prohibited ... ok
[INFO] [stdout] test tests::guardian_sizeof_alignof::test_alignof_rvalue_bitfield_allowed ... ok
[INFO] [stdout] test tests::guardian_sizeof_alignof::test_alignof_lvalue_bitfield_rejected ... ok
[INFO] [stderr] error: Invalid application of 'sizeof' to a function type
[INFO] [stderr]  --> example.c:4:20
[INFO] [stderr]   |
[INFO] [stderr] 4 |             return sizeof(f);
[INFO] [stderr]   |                    ^^^^^^^^
[INFO] [stdout] test tests::guardian_parameter_completeness::test_valid_parameter_declarations_accepted ... ok
[INFO] [stdout] test tests::guardian_sizeof_alignof::test_sizeof_bitfield_prohibited ... ok
[INFO] [stderr] error: cannot apply 'sizeof' to a bit-field
[INFO] [stderr]  --> example.c:7:20
[INFO] [stderr]   |
[INFO] [stderr] 7 |             return sizeof(s.x);
[INFO] [stderr]   |                    ^^^^^^^^^^
[INFO] [stderr] error: cannot take address of 'register' variable
[INFO] [stderr]  --> example.c:5:22
[INFO] [stderr]   |
[INFO] [stderr] 5 |             int *p = &u.x;
[INFO] [stderr]   |                      ^^^^
[INFO] [stderr] error: Invalid application of '_Alignof' to an incomplete type 'struct S'
[INFO] [stderr]  --> example.c:4:20
[INFO] [stderr]   |
[INFO] [stderr] 4 |             return _Alignof(struct S);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::guardian_sizeof_alignof::test_alignof_incomplete_type_prohibited ... ok
[INFO] [stdout] test tests::guardian_static_array_constraints::test_static_in_file_scope_array_prohibited ... ok
[INFO] [stderr] error: cannot apply 'sizeof' to a bit-field
[INFO] [stderr]  --> example.c:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 |             return sizeof(s.x);
[INFO] [stderr]   |                    ^^^^^^^^^^
[INFO] [stdout] test tests::guardian_sizeof_alignof::test_sizeof_lvalue_bitfield_rejected ... ok
[INFO] [stderr] error: type mismatch: expected int*, found float*
[INFO] [stderr]  --> example.c:6:9
[INFO] [stderr]   |
[INFO] [stderr] 6 |         x ? p : q;
[INFO] [stderr]   |         ^
[INFO] [stderr] error: cannot take address of 'register' variable
[INFO] [stderr]  --> example.c:4:22
[INFO] [stderr]   |
[INFO] [stderr] 4 |             int *p = a;
[INFO] [stderr]   |                      ^
[INFO] [stderr] error: cannot take address of 'register' variable
[INFO] [stderr]  --> example.c:6:22
[INFO] [stderr]   |
[INFO] [stderr] 6 |             int *p = &o.inner.x;
[INFO] [stderr]   |                      ^^^^^^^^^^
[INFO] [stderr] error: Invalid application of '_Alignof' to a function type
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Alignof(void(void));
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::guardian_register_constraints::test_register_union_member_address_prohibited ... ok
[INFO] [stdout] test tests::guardian_static_array_constraints::test_static_in_typedef_array_prohibited ... ok
[INFO] [stdout] test tests::guardian_ternary_pointer_constraints::test_ternary_incompatible_pointers_rejected ... ok
[INFO] [stdout] test tests::guardian_register_constraints::test_register_array_decay_prohibited ... ok
[INFO] [stdout] test tests::guardian_static_array_constraints::test_qualifiers_in_typedef_array_prohibited ... ok
[INFO] [stdout] test tests::guardian_register_constraints::test_register_nested_member_address_prohibited ... ok
[INFO] [stdout] test tests::guardian_ternary_pointer_constraints::test_ternary_lvalue_to_rvalue_strips_top_level_quals ... ok
[INFO] [stdout] test tests::guardian_sizeof_alignof::test_sizeof_rvalue_bitfield_allowed ... ok
[INFO] [stdout] test tests::guardian_sizeof_alignof::test_alignof_function_type_prohibited ... ok
[INFO] [stdout] test tests::guardian_static_array_constraints::test_static_in_function_parameter_allowed ... ok
[INFO] [stdout] test tests::guardian_static_array_constraints::test_static_in_block_scope_array_prohibited ... ok
[INFO] [stdout] test tests::guardian_register_constraints::test_register_selection_expression_array_decay_prohibited ... ok
[INFO] [stdout] test tests::guardian_sizeof_alignof::test_sizeof_function_type_prohibited ... ok
[INFO] [stdout] test tests::guardian_ternary_pointer_constraints::test_ternary_null_pointer_constant ... ok
[INFO] [stderr] error: cannot take address of 'register' variable
[INFO] [stderr]  --> example.c:4:22
[INFO] [stderr]   |
[INFO] [stderr] 4 |             int *p = _Generic(0, int: a);
[INFO] [stderr]   |                      ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: Invalid application of 'sizeof' to a function type
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return sizeof(void(void));
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::guardian_typedef_redefinition::test_typedef_redefinition_qualifiers ... ok
[INFO] [stdout] test tests::guardian_ternary_pointer_constraints::test_ternary_pointer_to_incomplete_struct ... ok
[INFO] [stdout] test tests::guardian_typedef_member_function::test_typedef_member_function_prohibited ... ok
[INFO] [stdout] test tests::guardian_ternary_pointer_constraints::test_ternary_lvalue_to_rvalue_with_comma_operator ... ok
[INFO] [stdout] test tests::guardian_ternary_pointer_constraints::test_ternary_pointer_qualifier_merging ... ok
[INFO] [stdout] test tests::guardian_typedef_redefinition::test_typedef_redefinition_different_type ... ok
[INFO] [stdout] test tests::guardian_ternary_pointer_constraints::test_ternary_pointer_qualifier_mismatch_assignment_rejected ... ok
[INFO] [stdout] test tests::guardian_vla::test_nested_vla_initialization_rejected ... ok
[INFO] [stdout] test tests::guardian_typedef_redefinition::test_typedef_redefinition_same_type_allowed ... ok
[INFO] [stderr] warning: assignment discards qualifiers from pointer target type (passing 'const int*' to 'int*') [-Wincompatible-pointer-types-discards-qualifiers]
[INFO] [stderr]  --> example.c:9:20
[INFO] [stderr]   |
[INFO] [stderr] 9 |         int *res = x ? p : q;
[INFO] [stderr]   |                    ^^^^^^^^^
[INFO] [stderr] error: variable-length array may not be initialized
[INFO] [stderr]  --> example.c:1:17
[INFO] [stderr]   |
[INFO] [stderr] 1 | void f(int n) { int a[10][n] = {0}; }
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: size of array has non-integer type
[INFO] [stderr]  --> example.c:1:25
[INFO] [stderr]   |
[INFO] [stderr] 1 | void f(void* p) { int a[p]; }
[INFO] [stderr]   |                         ^
[INFO] [stderr] error: size of array has non-integer type
[INFO] [stdout] test tests::guardian_ternary_pointer_constraints::test_ternary_void_result ... ok
[INFO] [stderr]  --> example.c:1:26
[INFO] [stdout] test tests::guardian_typedef_redefinition::test_typedef_redefinition_atomic ... ok
[INFO] [stderr]   |
[INFO] [stderr] 1 | void f(double d) { int a[d]; }
[INFO] [stdout] test tests::guardian_typedef_member_function::test_typedef_member_function_pointer_allowed ... ok
[INFO] [stdout] test tests::guardian_ternary_pointer_constraints::test_ternary_void_pointer_qualifier_merging ... ok
[INFO] [stdout] test tests::codegen_trapv::test_trapv_subtraction ... ok
[INFO] [stderr]   |                          ^
[INFO] [stdout] test tests::codegen_variadic::test_va_arg_long_double ... ok
[INFO] [stderr] error: Unexpected token: expected identifier, literal, or '(', found [
[INFO] [stderr]  --> example.c:2:16
[INFO] [stderr]   |
[INFO] [stderr] 2 |         int x [[attr]];
[INFO] [stderr]   |                ^
[INFO] [stderr] error: Unexpected token: expected identifier, literal, or '(', found [
[INFO] [stderr]   --> example.c:11:15
[INFO] [stderr]    |
[INFO] [stderr] 11 |         int ([[maybe_unused]] x);
[INFO] [stderr]    |               ^
[INFO] [stderr] error: Unexpected token: expected declaration specifiers, found [
[INFO] [stderr]  --> example.c:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | [[maybe_unused]] int x;
[INFO] [stderr]   | ^
[INFO] [stderr] error: Unexpected token: expected identifier, literal, or '(', found [
[INFO] [stderr]  --> example.c:2:16
[INFO] [stderr]   |
[INFO] [stderr] 2 |         int * [[attr]] ptr;
[INFO] [stderr]   |                ^
[INFO] [stdout] test tests::guardian_vla::test_vla_non_integer_size ... ok
[INFO] [stdout] test tests::mir_gen_compound_assignment::test_compound_assignment_truncation_32 ... ok
[INFO] [stdout] test tests::mir_gen_compound_assignment::test_compound_assignment_truncation ... ok
[INFO] [stdout] test tests::guardian_vm_linkage_constraints::test_vla_static_storage_prohibited ... ok
[INFO] [stdout] test tests::mir_gen_compound_assignment::test_compound_assignment_truncation_16 ... ok
[INFO] [stdout] test tests::guardian_vm_linkage_constraints::test_vla_pointer_file_scope_prohibited ... ok
[INFO] [stdout] test tests::mir_gen_sizeof::test_alignof_return_type ... ok
[INFO] [stdout] test tests::mir_unit::test_binary_float_op_is_comparison ... ok
[INFO] [stdout] test tests::mir_unit::test_binary_int_op_is_comparison ... ok
[INFO] [stdout] test tests::mir_unit::test_mir_type_is_aggregate ... ok
[INFO] [stdout] test tests::mir_gen_sizeof::test_sizeof_array_size_macro ... ok
[INFO] [stdout] test tests::mir_unit::test_mir_type_is_float ... ok
[INFO] [stdout] test tests::mir_unit::test_mir_type_is_int ... ok
[INFO] [stdout] test tests::mir_unit::test_mir_type_is_signed ... ok
[INFO] [stdout] test tests::mir_unit::test_mir_type_is_pointer ... ok
[INFO] [stdout] test tests::mir_unit::test_mir_type_predicates_combinations ... ok
[INFO] [stdout] test tests::mir_unit::test_mir_type_width ... ok
[INFO] [stdout] test tests::mir_validation::test_block_missing_statement ... ok
[INFO] [stdout] test tests::mir_validation::test_call_void_with_dest ... ok
[INFO] [stdout] test tests::mir_validation::test_call_arg_count_mismatch ... ok
[INFO] [stdout] test tests::guardian_vm_linkage_constraints::test_vla_pointer_block_scope_no_linkage_allowed ... ok
[INFO] [stdout] test tests::guardian_vla::test_vla_pointer_initialization ... ok
[INFO] [stdout] test tests::guardian_vm_linkage_constraints::test_vla_pointer_static_storage_allowed ... ok
[INFO] [stdout] test tests::guardian_vm_linkage_constraints::test_vla_pointer_thread_local_prohibited ... ok
[INFO] [stdout] test tests::mir_validation::test_constant_value_out_of_range ... ok
[INFO] [stdout] test tests::mir_validation::test_function_missing_local ... ok
[INFO] [stdout] test tests::mir_validation::test_flexible_assignment ... ok
[INFO] [stdout] test tests::guardian_vm_linkage_constraints::test_vla_pointer_extern_linkage_prohibited ... ok
[INFO] [stdout] test tests::mir_validation::test_invalid_cast_in_assignment ... ok
[INFO] [stdout] test tests::mir_validation::test_missing_function ... ok
[INFO] [stdout] test tests::mir_validation::test_missing_type ... ok
[INFO] [stdout] test tests::mir_validation::test_invalid_function_name ... ok
[INFO] [stdout] test tests::mir_validation::test_place_deref_non_pointer ... ok
[INFO] [stdout] test tests::mir_validation::test_place_field_out_of_bounds ... ok
[INFO] [stdout] test tests::mir_validation::test_operand_missing_constant ... ok
[INFO] [stdout] test tests::mir_gen_sizeof::test_sizeof_return_type ... ok
[INFO] [stdout] test tests::mir_validation::test_function_missing_return_type ... ok
[INFO] [stdout] test tests::mir_validation::test_rvalue_cast_aggregate_invalid ... ok
[INFO] [stdout] test tests::guardian_vla::test_vla_star_outside_prototype_scope ... ok
[INFO] [stdout] test tests::mir_validation::test_operand_cast_missing_type ... ok
[INFO] [stdout] test tests::mir_validation::test_missing_global ... ok
[INFO] [stdout] test tests::mir_validation::test_validation_error_display ... ok
[INFO] [stdout] test tests::mir_validation::test_valid_mir ... ok
[INFO] [stdout] test tests::mir_validation::test_struct_field_access_on_non_record ... ok
[INFO] [stdout] test tests::mir_validation::test_terminator_missing_block ... ok
[INFO] [stdout] test tests::mir_validation::test_function_missing_block ... ok
[INFO] [stdout] test tests::parser_builtin_convertvector::test_builtin_convertvector ... ok
[INFO] [stdout] test tests::parser_alignof_gnu::test_alignof_gnu_struct ... ok
[INFO] [stdout] test tests::parser_c23_attributes::test_attribute_coverage ... ok
[INFO] [stdout] test tests::parser_alignof_gnu::test_alignas_gnu_int ... ok
[INFO] [stdout] test tests::parser_c23_attributes::test_c23_attribute_parsing_on_statements ... ok
[INFO] [stdout] test tests::parser_c23_attributes::test_c23_attribute_fail_c11 ... ok
[INFO] [stdout] test tests::guardian_vla::test_vla_star_in_prototype_scope ... ok
[INFO] [stdout] test tests::parser_alignof_gnu::test_alignof_macro_expansion ... ok
[INFO] [stdout] test tests::parser_c23_attributes::test_c23_attribute_parsing_basic ... ok
[INFO] [stdout] test tests::parser_c23_attributes::test_c23_attribute_parsing_complex ... ok
[INFO] [stderr] error: Unexpected token: expected identifier, literal, or '(', found [
[INFO] [stderr]  --> example.c:3:22
[INFO] [stderr]   |
[INFO] [stderr] 3 |         int arr[10] [[attr]];
[INFO] [stderr]   |                      ^
[INFO] [stderr] error: Unexpected token: expected ), found [
[INFO] [stderr]  --> example.c:4:23
[INFO] [stderr]   |
[INFO] [stderr] 4 |         void f(int x [[attr]]);
[INFO] [stderr]   |                       ^
[INFO] [stderr] error: Unexpected token: expected identifier, literal, or '(', found [
[INFO] [stderr]  --> example.c:2:44
[INFO] [stderr]   |
[INFO] [stderr] 2 |         int x __attribute__((aligned(8))) [[maybe_unused]] __asm__("my_x");
[INFO] [stderr]   |                                            ^
[INFO] [stdout] test tests::parser_decl::test_anonymous_struct_declaration ... ok
[INFO] [stdout] test tests::parser_c23_attributes::test_c23_attribute_parsing_on_declarators ... ok
[INFO] [stderr] error: Unexpected token: expected ';' after declaration, found }
[INFO] [stderr]  --> example.c:8:9
[INFO] [stderr]   |
[INFO] [stderr] 8 |         };
[INFO] [stdout] test tests::parser_decl::test_array_declaration ... ok
[INFO] [stdout] test tests::parser_decl::test_atomic_qualifier_syntax ... ok
[INFO] [stdout] test tests::parser_c23_attributes::test_trailing_attributes ... ok
[INFO] [stdout] test tests::parser_decl::test_atomic_type_specifier ... ok
[INFO] [stderr]   |         ^
[INFO] [stdout] test tests::parser_decl::test_atomic_specifier_syntax ... ok
[INFO] [stdout] test tests::parser_decl::test_array_of_pointers_with_initializer ... ok
[INFO] [stdout] test tests::parser_decl::test_array_of_function_pointers ... ok
[INFO] [stdout] test tests::parser_c23_attributes::test_c23_attribute_parsing_on_structs ... ok
[INFO] [stdout] test tests::parser_decl::test_bitfield_with_mixed_members ... ok
[INFO] [stdout] test tests::parser_decl::test_bitfield_builder_coverage ... ok
[INFO] [stdout] test tests::parser_decl::test_bitfield_with_large_width ... ok
[INFO] [stdout] test tests::mir_dumper_coverage::test_dump_basic_module ... ok
[INFO] [stdout] test tests::parser_decl::test_complex_abstract_declarator_function ... ok
[INFO] [stdout] test tests::parser_decl::test_atomic_type_specifier_with_pointer ... ok
[INFO] [stdout] test tests::parser_decl::test_cast_attribute_pointer ... ok
[INFO] [stdout] test tests::codegen_trapv::test_trapv_addition ... ok
[INFO] [stdout] test tests::parser_decl::test_complex_declaration ... ok
[INFO] [stdout] test tests::parser_decl::test_callback_style_function ... ok
[INFO] [stdout] test tests::parser_decl::test_bitfield_declaration ... ok
[INFO] [stdout] test tests::parser_decl::test_array_declaration_with_initializer ... ok
[INFO] [stdout] test tests::parser_decl::test_complex_declarator_ret_ptr_to_func ... ok
[INFO] [stdout] test tests::parser_decl::test_complex_declarator_arr_of_ptr_to_func ... ok
[INFO] [stdout] test tests::parser_decl::test_declaration_with_initializer ... ok
[INFO] [stdout] test tests::parser_decl::test_complex_function_param_declarators ... ok
[INFO] [stdout] test tests::parser_decl::test_designated_initializer_mixed_single_and_range ... ok
[INFO] [stdout] test tests::parser_decl::test_function_definition ... ok
[INFO] [stdout] test tests::parser_decl::test_designated_initializer_range_syntax ... ok
[INFO] [stdout] test tests::parser_decl::test_designated_initializer_simple_array ... ok
[INFO] [stdout] test tests::parser_decl::test_designated_initializer_range_with_expressions ... ok
[INFO] [stdout] test tests::parser_decl::test_deeply_mixed_declarators ... ok
[INFO] [stdout] test tests::parser_decl::test_enum_with_non_literal_value ... ok
[INFO] [stdout] test tests::parser_decl::test_enum_declaration_with_values ... ok
[INFO] [stdout] test tests::mir_gen_sizeof::test_offsetof_return_type ... ok
[INFO] [stdout] test tests::parser_decl::test_designated_initializer_multiple_ranges ... ok
[INFO] [stdout] test tests::parser_decl::test_function_returning_pointer_to_function ... ok
[INFO] [stdout] test tests::parser_decl::test_const_volatile_pointer ... ok
[INFO] [stdout] test tests::parser_decl::test_function_pointer_with_cast_initializer ... ok
[INFO] [stdout] test tests::parser_decl::test_function_pointer_with_initializer ... ok
[INFO] [stdout] test tests::parser_decl::test_designated_initializer_struct_with_range ... ok
[INFO] [stdout] test tests::parser_decl::test_invalid_enum_decl ... ok
[INFO] [stdout] test tests::parser_decl::test_madness_with_parentheses ... ok
[INFO] [stdout] test tests::parser_decl::test_mixed_declarators_simple ... ok
[INFO] [stdout] test tests::parser_decl::test_insane_parentheses_on_pointer_to_array_to_function ... ok
[INFO] [stdout] test tests::parser_decl::test_function_with_array_abstract_declarator ... ok
[INFO] [stdout] test tests::parser_decl::test_multiple_declarators ... ok
[INFO] [stdout] test tests::parser_decl::test_invalid_struct_decl ... ok
[INFO] [stdout] test tests::parser_decl::test_simple_declaration ... ok
[INFO] [stdout] test tests::parser_decl::test_pointer_declaration ... ok
[INFO] [stdout] test tests::parser_decl::test_parse_bitfield ... ok
[INFO] [stdout] test tests::parser_decl::test_param_attribute_int ... ok
[INFO] [stdout] test tests::parser_decl::test_parse_noreturn_function_declaration ... ok
[INFO] [stdout] test tests::parser_decl::test_parentheses_that_do_nothing ... ok
[INFO] [stdout] test tests::parser_decl::test_struct_declaration_with_body ... ok
[INFO] [stdout] test tests::parser_decl::test_static_assert_missing_string_literal ... ok
[INFO] [stdout] test tests::parser_decl::test_struct_definition_and_variable ... ok
[INFO] [stdout] test tests::parser_decl::test_struct_member_multiple_declarators ... ok
[INFO] [stdout] test tests::parser_decl::test_variadic_function_declaration ... ok
[INFO] [stdout] test tests::parser_decl::test_top_level_semicolon_regression ... ok
[INFO] [stdout] test tests::parser_decl::test_void_pointer_param ... ok
[INFO] [stdout] test tests::parser_decl::test_simple_struct_declaration ... ok
[INFO] [stdout] test tests::parser_decl::test_translation_unit ... ok
[INFO] [stdout] test tests::parser_decl::test_static_assert ... ok
[INFO] [stdout] test tests::parser_decl::test_static_assert_c23_no_message ... ok
[INFO] [stdout] test tests::parser_decl::test_struct_variable_declaration ... ok
[INFO] [stdout] test tests::parser_decl::test_function_with_array_of_pointer_param ... ok
[INFO] [stdout] test tests::parser_declarator_coverage::test_abstract_declarator_builder_coverage ... ok
[INFO] [stdout] test tests::parser_declarator_coverage::test_is_type_name_start_c23_attr ... ok
[INFO] [stdout] test tests::parser_declarator_coverage::test_abstract_declarator_with_attributes ... ok
[INFO] [stdout] test tests::parser_declarator_coverage::test_abstract_declarator_in_declarator ... ok
[INFO] [stdout] test tests::parser_declarator_coverage::test_array_size_qualifiers ... ok
[INFO] [stderr] error: Unexpected token: expected identifier, literal, or '(', found [
[INFO] [stderr]  --> example.c:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | int x [[maybe_unused]] [[attr((1))]] [[123]], y __asm__("y") [[maybe_unused]] = 1;
[INFO] [stderr]   |        ^
[INFO] [stdout] test tests::parser_declarator_coverage::test_get_declarator_params_coverage ... ok
[INFO] [stderr] error: Unexpected token: expected ), found int
[INFO] [stderr]  --> example.c:1:15
[INFO] [stderr]   |
[INFO] [stderr] 1 | void f(int (* int));
[INFO] [stderr]   |               ^^^
[INFO] [stdout] test tests::parser_declarator_coverage::test_abstract_declarator_left_paren_gaps ... ok
[INFO] [stdout] test tests::parser_declarator_coverage::test_nested_function_params_coverage ... ok
[INFO] [stdout] test tests::parser_declarator_coverage::test_bitfield_exhaustive ... ok
[INFO] [stdout] test tests::parser_declarator_coverage::test_mega_coverage_declarations ... ok
[INFO] [stdout] test tests::parser_errors::test_parse_diag_display_and_eof ... ok
[INFO] [stdout] test tests::parser_declarator_coverage::test_peek_past_attribute_exhaustive ... ok
[INFO] [stderr] error: Unexpected token: expected ), found p
[INFO] [stderr]  --> example.c:1:42
[INFO] [stderr]   |
[INFO] [stderr] 1 | typedef int my_int; void f(int (* my_int p));
[INFO] [stderr]   |                                          ^
[INFO] [stdout] test tests::parser_expr::test_array_indexing ... ok
[INFO] [stderr] error: Declaration not allowed in this context
[INFO] [stderr]  --> example.c:1:10
[INFO] [stderr]   |
[INFO] [stderr] 1 | int foo()();
[INFO] [stderr]   |          ^
[INFO] [stdout] test tests::parser_declarator_coverage::test_abstract_declarator_dead_arms_attempt ... ok
[INFO] [stdout] test tests::parser_declarator_coverage::test_vla_star_size ... ok
[INFO] [stdout] test tests::parser_declarator_coverage::test_array_size_variations_coverage ... ok
[INFO] [stderr] error: Declaration not allowed in this context
[INFO] [stderr]  --> example.c:1:10
[INFO] [stderr]   |
[INFO] [stderr] 1 | int foo()[5];
[INFO] [stderr]   |          ^
[INFO] [stdout] test tests::parser_declarator_coverage::test_get_declarator_name_bitfield ... ok
[INFO] [stdout] test tests::parser_declarator_coverage::test_pointer_qualifiers_coverage ... ok
[INFO] [stdout] test tests::parser_expr::test_assignment ... ok
[INFO] [stdout] test tests::parser_declarator_coverage::test_abstract_declarator_exhaustive ... ok
[INFO] [stdout] test tests::parser_declarator_coverage::test_type_qualifiers_atomic_restrict ... ok
[INFO] [stdout] test tests::parser_expr::test_array_indexing_with_expression ... ok
[INFO] [stdout] test tests::parser_expr::test_builtin_bit_cast ... ok
[INFO] [stdout] test tests::parser_declarator_coverage::test_pointer_qualifier_abstract ... ok
[INFO] [stdout] test tests::parser_declarator_coverage::test_abstract_declarator_complex_coverage ... ok
[INFO] [stderr] error: Unexpected token: expected ), found 10
[INFO] [stderr]  --> example.c:1:21
[INFO] [stderr]   |
[INFO] [stderr] 1 | void f(int (*)(int)[10]);
[INFO] [stderr]   |                     ^^
[INFO] [stdout] test tests::parser_declarator_coverage::test_complex_abstract_declarators_trailing ... ok
[INFO] [stdout] test tests::parser_expr::test_chained_assignment ... ok
[INFO] [stderr] error: Declaration not allowed in this context
[INFO] [stderr]  --> example.c:1:11
[INFO] [stderr]   |
[INFO] [stderr] 1 | int foo[5]();
[INFO] [stderr]   |           ^
[INFO] [stdout] test tests::parser_expr::test_generic_selection_with_assignment ... ok
[INFO] [stdout] test tests::parser_expr::test_builtin_trap ... ok
[INFO] [stdout] test tests::parser_expr::test_generic_selection_with_default ... ok
[INFO] [stdout] test tests::parser_expr::test_compound_literal ... ok
[INFO] [stdout] test tests::parser_expr::test_generic_selection_with_function_call ... ok
[INFO] [stdout] test tests::parser_expr::test_generic_selection_with_multiple_associations ... ok
[INFO] [stdout] test tests::parser_expr::test_chained_subtraction ... ok
[INFO] [stdout] test tests::parser_expr::test_complex_expression ... ok
[INFO] [stdout] test tests::parser_expr::test_generic_selection_with_qualified_type ... ok
[INFO] [stderr] error: Unexpected token: expected ), found +
[INFO] [stderr]  --> example.c:1:9
[INFO] [stderr]   |
[INFO] [stderr] 1 | int (***+x);
[INFO] [stderr]   |         ^
[INFO] [stdout] test tests::parser_expr::test_builtin_alloca ... ok
[INFO] [stdout] test tests::parser_expr::test_member_access ... ok
[INFO] [stdout] test tests::parser_expr::test_compound_literal_struct ... ok
[INFO] [stderr] error: Unexpected token: expected ), found +
[INFO] [stderr]  --> example.c:1:14
[INFO] [stderr]   |
[INFO] [stderr] 1 | void foo(int +);
[INFO] [stderr]   |              ^
[INFO] [stdout] test tests::parser_expr::test_generic_selection_simple ... ok
[INFO] [stdout] test tests::parser_expr::test_generic_selection_with_pointer_types ... ok
[INFO] [stdout] test tests::parser_expr::test_parenthesized_expression ... ok
[INFO] [stdout] test tests::parser_expr::test_sizeof_array_size_macro_pattern ... ok
[INFO] [stdout] test tests::parser_expr::test_function_call ... ok
[INFO] [stdout] test tests::parser_expr::test_sizeof_compound_literal_expr ... ok
[INFO] [stdout] test tests::parser_expr::test_precedence ... ok
[INFO] [stdout] test tests::parser_expr::test_postfix_operator_precedence ... ok
[INFO] [stdout] test tests::parser_expr::test_sizeof_expr_with_postfix_member ... ok
[INFO] [stdout] test tests::parser_expr::test_sizeof_compound_literal_postfix ... ok
[INFO] [stdout] test tests::parser_expr::test_simple_addition ... ok
[INFO] [stderr] error: Unexpected token: expected ), found int
[INFO] [stderr]  --> example.c:1:15
[INFO] [stderr]   |
[INFO] [stderr] 1 | void foo(int (int +));
[INFO] [stderr]   |               ^^^
[INFO] [stdout] test tests::parser_expr::test_sizeof_expression ... ok
[INFO] [stderr] error: Unexpected token: expected ), found int
[INFO] [stderr]  --> example.c:1:15
[INFO] [stderr]   |
[INFO] [stderr] 1 | void foo(int (int x +));
[INFO] [stderr]   |               ^^^
[INFO] [stderr] error: Unexpected token: expected ), found +
[INFO] [stderr]  --> example.c:1:15
[INFO] [stderr]   |
[INFO] [stderr] 1 | void foo(int (+));
[INFO] [stderr]   |               ^
[INFO] [stderr] error: Unexpected token: expected ), found +
[INFO] [stderr]  --> example.c:1:10
[INFO] [stderr]   |
[INFO] [stderr] 1 | void foo(+);
[INFO] [stdout] test tests::parser_gcc_extensions::test_attribute_in_cast ... ok
[INFO] [stderr]   |          ^
[INFO] [stdout] test tests::parser_expr::test_sizeof_expr_with_postfix_index ... ok
[INFO] [stdout] test tests::parser_gcc_extensions::test_gcc_keywords_in_parameters ... ok
[INFO] [stdout] test tests::parser_gcc_extensions::test_asm_label ... ok
[INFO] [stdout] test tests::parser_gcc_extensions::test_gnu_statement_expression ... ok
[INFO] [stdout] test tests::parser_gcc_extensions::test_const_keyword_underscores ... ok
[INFO] [stdout] test tests::parser_expr::test_unary_operators ... ok
[INFO] [stdout] test tests::parser_gcc_extensions::test_asm_and_attributes ... ok
[INFO] [stdout] test tests::parser_expr::test_ternary_with_assignment_in_middle_operand ... ok
[INFO] [stderr] error: Unexpected token: expected ), found +
[INFO] [stderr]  --> example.c:1:10
[INFO] [stderr]   |
[INFO] [stderr] 1 | void foo(+x);
[INFO] [stderr]   |          ^
[INFO] [stdout] test tests::parser_expr::test_ternary_with_comma_in_middle ... ok
[INFO] [stdout] test tests::parser_expr::test_ternary_with_assignment ... ok
[INFO] [stdout] test tests::parser_gcc_extensions::test_struct_member_attributes ... ok
[INFO] [stderr] error: Unexpected token: expected ), found +
[INFO] [stderr]  --> example.c:1:17
[INFO] [stderr]   |
[INFO] [stderr] 1 | void foo(int x, +);
[INFO] [stderr]   |                 ^
[INFO] [stdout] test tests::parser_gcc_extensions::test_multiple_attributes_function_decl ... ok
[INFO] [stderr] error: Unexpected token: expected ), found }
[INFO] [stderr]  --> example.c:1:17
[INFO] [stderr]   |
[INFO] [stderr] 1 | void foo(){foo(1}
[INFO] [stderr]   |                 ^
[INFO] [stderr] error: Unexpected token: expected }, found ;
[INFO] [stdout] test tests::parser_gcc_extensions::test_gnu_statement_expression_empty ... ok
[INFO] [stderr]  --> example.c:1:29
[INFO] [stderr]   |
[INFO] [stderr] 1 | void foo() { int x[] = {1, 2; }
[INFO] [stdout] test tests::parser_gcc_extensions::test_restrict_keyword ... ok
[INFO] [stdout] test tests::parser_lexical::test_lexer_display ... ok
[INFO] [stderr]   |                             ^
[INFO] [stderr] <unknown>: Unexpected token: expected }, found end of file
[INFO] [stdout] test tests::parser_expr::test_sizeof_expr_with_postfix_tail_coverage ... ok
[INFO] [stdout] test tests::parser_lexical::test_identifier_boundary_cases ... ok
[INFO] [stdout] test tests::parser_lexical::test_keywords ... ok
[INFO] [stdout] test tests::parser_gcc_extensions::test_restrict_keyword_underscores ... ok
[INFO] [stdout] test tests::parser_lexical::test_operators ... ok
[INFO] [stdout] test tests::parser_stmt::test_ambiguous_compound_statement ... ok
[INFO] [stdout] test tests::parser_lexical::test_char_literals ... ok
[INFO] [stdout] test tests::parser_stmt::test_for_statement_with_declaration_no_init ... ok
[INFO] [stdout] test tests::parser_stmt::test_for_statement_with_declaration ... ok
[INFO] [stdout] test tests::parser_stmt::test_goto_with_complex_label_name ... ok
[INFO] [stdout] test tests::parser_stmt::test_case_range_statement ... ok
[INFO] [stdout] test tests::parser_stmt::test_label_with_break_statement ... ok
[INFO] [stdout] test tests::parser_stmt::test_for_multiple_declarations ... ok
[INFO] [stdout] test tests::parser_stmt::test_label_followed_by_function_call ... ok
[INFO] [stdout] test tests::parser_stmt::test_label_followed_by_empty_statement ... ok
[INFO] [stdout] test tests::parser_stmt::test_label_with_compound_statement ... ok
[INFO] [stdout] test tests::parser_stmt::test_label_followed_by_goto ... ok
[INFO] [stdout] test tests::parser_stmt::test_label_with_continue_statement ... ok
[INFO] [stdout] test tests::parser_stmt::test_label_followed_by_compound_statement_with_declaration ... ok
[INFO] [stdout] test tests::parser_stmt::test_label_with_expression_statement ... ok
[INFO] [stdout] test tests::parser_stmt::test_attribute_statement ... ok
[INFO] [stdout] test tests::parser_stmt::test_label_with_while_loop ... ok
[INFO] [stdout] test tests::parser_stmt::test_label_with_if_statement ... ok
[INFO] [stdout] test tests::parser_stmt::test_label_with_numeric_suffix ... ok
[INFO] [stdout] test tests::parser_lexical::test_string_literals ... ok
[INFO] [stdout] test tests::parser_stmt::test_ambiguous_compound_statement_with_typedef ... ok
[INFO] [stdout] test tests::parser_stmt::test_multiple_statements_with_labels ... ok
[INFO] [stdout] test tests::parser_stmt::test_parse_pragma_pack_statement ... ok
[INFO] [stdout] test tests::parser_stmt::test_multiple_labels_sequence ... ok
[INFO] [stdout] test tests::parser_lexical::test_integer_literals ... ok
[INFO] [stdout] test tests::parser_typeof_unqual::test_typeof_unqual_expr ... ok
[INFO] [stdout] test tests::mir_gen_sizeof::test_float_constant_folding_in_global_init ... ok
[INFO] [stdout] test tests::parser_typedef_shadowing::test_typedef_shadowing ... ok
[INFO] [stdout] test tests::parser_typeof_unqual::test_typeof_unqual_type ... ok
[INFO] [stdout] test tests::parser_types::test_typeof_type ... ok
[INFO] [stdout] test tests::parser_types::test_typeof_comma_expr ... ok
[INFO] [stderr] <unknown>: Unexpected token: expected }, found end of file
[INFO] [stderr] <unknown>: Unexpected token: expected }, found end of file
[INFO] [stderr] error: Unexpected token: expected declaration specifiers, found typeof_unqual
[INFO] [stderr]  --> example.c:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | typeof_unqual(int) x;
[INFO] [stderr]   | ^^^^^^^^^^^^^
[INFO] [stdout] test tests::parser_typeof_unqual::test_typeof_unqual_comma_expr ... ok
[INFO] [stdout] test tests::parser_typeof_unqual::test_typeof_unqual_c11_fails ... ok
[INFO] [stdout] test tests::pp_conditionals::test_has_include_next_builtin ... ok
[INFO] [stdout] test tests::parser_typedef_shadowing::test_typedef_restored_after_scope ... ok
[INFO] [stdout] test tests::pp_conditionals::test_has_include_computed ... ok
[INFO] [stdout] test tests::parser_typedef_shadowing::test_typedef_param_shadowing ... ok
[INFO] [stdout] test tests::pp_conditionals::test_pp_arithmetic_overflow ... ok
[INFO] [stderr] <unknown>: Unexpected token: expected ), found end of file
[INFO] [stdout] test tests::pp_conditionals::test_has_include_builtin ... ok
[INFO] [stdout] test tests::pp_conditionals::test_skipping_rules ... ok
[INFO] [stderr] error: Unexpected token: expected ), found +
[INFO] [stdout] test tests::parser_types::test_typeof_expr ... ok
[INFO] [stderr]  --> example.c:1:16
[INFO] [stdout] test tests::pp_directives::test_error_directive_produces_failure ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::parser_lexical::test_float_literals ... ok
[INFO] [stderr] 1 | void foo(int ( + ));
[INFO] [stdout] test tests::pp_directives::test_invalid_line_directive ... ok
[INFO] [stderr]   |                ^
[INFO] [stdout] test tests::pp_directives::test_null_directive ... ok
[INFO] [stderr] error: Unexpected token: expected ), found ...
[INFO] [stdout] test tests::pp_directives::test_line_directive_presumed_location ... ok
[INFO] [stderr]  --> example.c:1:14
[INFO] [stdout] test tests::pp_directives::test_line_directive_zero_line_number ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::pp_directives::test_pragma_gcc_poison ... ok
[INFO] [stderr] 1 | void foo(int ..., int);
[INFO] [stdout] test tests::pp_directives::test_line_directive_malformed_filename ... ok
[INFO] [stderr]   |              ^^^
[INFO] [stdout] test tests::pp_conditionals::test_logical_operators ... ok
[INFO] [stderr] error: #error directive: "this should be reported"
[INFO] [stdout] test tests::pp_directives::test_eod_extra_tokens ... ok
[INFO] [stderr]  --> <test>:4:7
[INFO] [stdout] test tests::pp_directives::test_pragma_once_via_pragma_operator ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::pp_directives::test_pragma_message ... ok
[INFO] [stderr] 4 | #error "this should be reported"
[INFO] [stdout] test tests::pp_conditionals::test_pp_unary_operators_coverage ... ok
[INFO] [stderr]   |       ^
[INFO] [stderr] error: Unexpected token: expected identifier, found 1
[INFO] [stderr]  --> example.c:1:30
[INFO] [stderr]   |
[INFO] [stderr] 1 | void foo() { struct S s; s . 1; }
[INFO] [stderr]   |                              ^
[INFO] [stderr] error: attempt to use poisoned identifier 'foo'
[INFO] [stderr]  --> <test>:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | int foo = 1;
[INFO] [stderr]   |     ^
[INFO] [stderr] error: attempt to use poisoned identifier 'bar'
[INFO] [stderr]  --> <test>:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | int bar = 3;
[INFO] [stderr]   |     ^
[INFO] [stderr] error: Unexpected token: expected identifier, found 1
[INFO] [stderr]  --> example.c:1:30
[INFO] [stderr]   |
[INFO] [stderr] 1 | void foo() { struct S *s; s->1; }
[INFO] [stderr]   |                              ^
[INFO] [stderr] error: Unexpected token: expected identifier, found 1
[INFO] [stderr]  --> example.c:1:43
[INFO] [stderr]   |
[INFO] [stderr] 1 | void foo() { __builtin_offsetof(struct S, 1); }
[INFO] [stderr]   |                                           ^
[INFO] [stdout] test tests::pp_directives::test_pragma_error ... ok
[INFO] [stdout] test tests::pp_directives::test_push_pop_macro ... ok
[INFO] [stdout] test tests::pp_directives::test_push_pop_undefined_macro ... ok
[INFO] [stdout] test tests::pp_directives::test_pragma_operator_in_if ... ok
[INFO] [stderr] warning: Unknown pragma: unknown_pragma [-Wunknown-pragmas]
[INFO] [stderr]  --> <test>:2:9
[INFO] [stderr]   |
[INFO] [stderr] 2 | #pragma unknown_pragma
[INFO] [stdout] test tests::pp_directives::test_undef_eof_no_newline ... ok
[INFO] [stdout] test tests::parser_types::test_type_combinations ... ok
[INFO] [stdout] test tests::mir_gen_sizeof::test_sizeof_double_nested_statement_expression ... ok
[INFO] [stderr]   |         ^
[INFO] [stderr] warning: "this is a warning" [-W#warnings]
[INFO] [stderr]  --> <test>:2:9
[INFO] [stderr]   |
[INFO] [stderr] 2 | #warning "this is a warning"
[INFO] [stderr]   |         ^
[INFO] [stderr] error: Unexpected token: expected identifier, found 1
[INFO] [stderr]  --> example.c:1:10
[INFO] [stdout] test tests::pp_directives::test_skipped_directives_coverage ... ok
[INFO] [stderr]   |
[INFO] [stderr] 1 | enum E { 1 };
[INFO] [stderr]   |          ^
[INFO] [stdout] test tests::pp_directives::test_unknown_pragma_warns ... ok
[INFO] [stdout] test tests::pp_conditionals::test_pp_conditional_diagnostics ... ok
[INFO] [stdout] test tests::pp_directives::test_pragma_operator_message ... ok
[INFO] [stderr] warning: "this is a warning" [-W#warnings]
[INFO] [stderr]  --> <test>:2:9
[INFO] [stderr]   |
[INFO] [stderr] 2 | #warning "this is a warning"
[INFO] [stderr]   |         ^
[INFO] [stdout] test tests::pp_directives::test_pragma_operator_inside_macro ... ok
[INFO] [stdout] test tests::pp_directives::test_pragma_warning ... ok
[INFO] [stdout] test tests::pp_dumper_coverage::test_dumper_regression_out_of_bounds ... ok
[INFO] [stderr] error: Unexpected token: expected identifier, found +
[INFO] [stderr]  --> example.c:1:52
[INFO] [stderr]   |
[INFO] [stderr] 1 | struct S { int x; }; void foo() { struct S s = { . + = 1 }; }
[INFO] [stdout] test tests::pp_dumper_coverage::test_dumper_with_includes ... ok
[INFO] [stderr]   |                                                    ^
[INFO] [stdout] test tests::pp_directives::test_warning_directive ... ok
[INFO] [stdout] test tests::pp_embed::test_embed_basic ... ok
[INFO] [stdout] test tests::pp_conditionals::test_pp_binary_operators_coverage ... ok
[INFO] [stdout] test tests::pp_features::test_has_builtin ... ok
[INFO] [stdout] test tests::pp_embed::test_embed_limit ... ok
[INFO] [stdout] test tests::pp_features::test_has_attribute ... ok
[INFO] [stdout] test tests::pp_features::test_has_c_attribute ... ok
[INFO] [stdout] test tests::pp_includes::test_circular_include_in_memory ... ok
[INFO] [stdout] test tests::pp_features::test_has_feature ... ok
[INFO] [stdout] test tests::pp_includes::test_computed_include_composite ... ok
[INFO] [stdout] test tests::pp_includes::test_computed_include_missing_greater ... ok
[INFO] [stdout] test tests::pp_embed::test_embed_not_found ... ok
[INFO] [stdout] test tests::pp_conditionals::test_ifdef_ifndef_elif ... ok
[INFO] [stderr] error: Unexpected token: expected identifier, found 1
[INFO] [stderr]  --> example.c:1:19
[INFO] [stderr]   |
[INFO] [stderr] 1 | void foo() { goto 1; }
[INFO] [stderr]   |                   ^
[INFO] [stdout] test tests::pp_embed::test_embed_macro ... ok
[INFO] [stdout] test tests::pp_includes::test_computed_include_empty ... ok
[INFO] [stdout] test tests::pp_includes::test_computed_include_extra_tokens_angled ... ok
[INFO] [stderr] error: Unexpected token: expected Expected declarator or identifier after type specifier, found 1
[INFO] [stderr]  --> example.c:1:17
[INFO] [stderr]   |
[INFO] [stderr] 1 | int foo() { int 1; }
[INFO] [stderr]   |                 ^
[INFO] [stdout] test tests::mir_gen_sizeof::test_sizeof_nested_statement_expression ... ok
[INFO] [stdout] test tests::pp_includes::test_include_same_file_twice_without_pragma_once ... ok
[INFO] [stdout] test tests::pp_includes::test_computed_include_invalid ... ok
[INFO] [stdout] test tests::pp_lexical::test_all_keyword_tokens ... ok
[INFO] [stdout] test tests::pp_includes::test_include_next_quoted ... ok
[INFO] [stdout] test tests::pp_includes::test_computed_include_angled ... ok
[INFO] [stdout] test tests::pp_internal::test_header_search_include_next ... ok
[INFO] [stdout] test tests::pp_includes::test_include_next_builtin ... ok
[INFO] [stdout] test tests::pp_internal::test_header_search_resolution ... ok
[INFO] [stdout] test tests::pp_includes::test_include_next_angled ... ok
[INFO] [stderr] <unknown>: Unexpected token: expected Expected declarator or identifier after type specifier, found end of file
[INFO] [stdout] test tests::pp_lexical::test_all_literal_tokens ... ok
[INFO] [stdout] test tests::pp_lexical::test_all_punctuation_tokens ... ok
[INFO] [stdout] test tests::pp_lexical::test_char_literal_escapes ... ok
[INFO] [stdout] test tests::pp_lexical::test_consecutive_splices ... ok
[INFO] [stdout] test tests::pp_lexical::test_adjacent_string_literals_not_combined ... ok
[INFO] [stdout] test tests::pp_lexical::test_eod_for_various_directives ... ok
[INFO] [stdout] test tests::pp_internal::test_destringize ... ok
[INFO] [stderr] <unknown>: Unexpected token: expected declaration specifiers, found end of file
[INFO] [stdout] test tests::pp_lexical::test_eod_at_eof_in_directive ... ok
[INFO] [stdout] test tests::pp_includes::test_computed_include_string ... ok
[INFO] [stderr] error: Invalid universal character name
[INFO] [stderr]  --> <test>:1:17
[INFO] [stderr]   |
[INFO] [stderr] 1 | const char* s = "\uZZZZ";
[INFO] [stderr]   |                 ^
[INFO] [stderr] <unknown>: Unexpected token: expected single type specifier, found unknown token
[INFO] [stdout] test tests::pp_features::test_has_include_next ... ok
[INFO] [stdout] test tests::pp_includes::test_computed_include_extra_tokens_string ... ok
[INFO] [stdout] test tests::pp_lexical::test_dump_preprocessed_output_suppress_line_markers ... ok
[INFO] [stdout] test tests::pp_lexical::test_dump_preprocessed_output_with_macros ... ok
[INFO] [stdout] test tests::pp_lexical::test_hex_literal_minus_sign_regression ... ok
[INFO] [stdout] test tests::pp_lexical::test_hash_starts_pp_line ... ok
[INFO] [stdout] test tests::pp_lexical::test_hex_float_literal ... ok
[INFO] [stdout] test tests::pp_lexical::test_hashhash_no_starts_pp_line ... ok
[INFO] [stdout] test tests::pp_lexical::test_eod_token_production ... ok
[INFO] [stdout] test tests::pp_lexical::test_indented_hash_starts_pp_line ... ok
[INFO] [stdout] test tests::pp_lexical::test_lexer_line_splicing_with_whitespace ... ok
[INFO] [stdout] test tests::pp_lexical::test_dump_preprocessed_output_simple ... ok
[INFO] [stdout] test tests::pp_lexical::test_invalid_ucn ... ok
[INFO] [stdout] test tests::pp_lexical::test_line_splicing_comprehensive ... ok
[INFO] [stdout] test tests::pp_lexical::test_line_splicing_in_skip_whitespace ... ok
[INFO] [stdout] test tests::pp_lexical::test_not_u8_literal ... ok
[INFO] [stdout] test tests::pp_lexical::test_u8_char_literal ... ok
[INFO] [stdout] test tests::pp_lexical::test_u8_string_literal ... ok
[INFO] [stdout] test tests::pp_lexical::test_u8_string_literal_with_escapes ... ok
[INFO] [stderr] error: Unexpected token: expected identifier, literal, or '(', found invalid token
[INFO] [stderr]  --> example.c:1:25
[INFO] [stderr]   |
[INFO] [stderr] 1 | void foo() { double x = 0x1.0p; }
[INFO] [stderr]   |                         ^^^^^^
[INFO] [stdout] test tests::pp_lexical::test_various_bmp_characters ... ok
[INFO] [stderr] error: Unexpected token: expected Expected ';' after struct/union definition, found 123
[INFO] [stderr]  --> example.c:1:34
[INFO] [stdout] test tests::pp_lexical::test_raw_utf8_identifier ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::pp_lexical::test_utf_macros ... ok
[INFO] [stderr] 1 | void foo() { struct S { int x; } 123; }
[INFO] [stdout] test tests::pp_lexical::test_wide_character_literals ... ok
[INFO] [stderr]   |                                  ^^^
[INFO] [stdout] test tests::pp_macros::test_brace_comma_separation ... ok
[INFO] [stderr] warning: Macro 'FOO' redefined with different value [-Wmacro-redefined]
[INFO] [stdout] test tests::pp_lexical::test_pp_wide_char_arithmetic ... ok
[INFO] [stderr]  --> <test>:3:9
[INFO] [stdout] test tests::pp_lexical::test_ucn_identifier ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::pp_lexical::test_preprocessor_multiline_directive_with_splice ... ok
[INFO] [stderr] 3 | #define FOO 43
[INFO] [stdout] test tests::pp_lexical::test_ucn_string_literal ... ok
[INFO] [stderr]   |         ^
[INFO] [stdout] test tests::pp_macros::test_deferred_expansion_nested_expand ... ok
[INFO] [stderr] error: Unexpected token: expected Expected ';' after enum definition, found 123
[INFO] [stdout] test tests::pp_macros::test_counter_macro_pasting_no_prescan ... ok
[INFO] [stderr]  --> example.c:1:27
[INFO] [stdout] test tests::pp_macros::test_concat_with_empty_argument ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::pp_lexical::test_wide_string_literals ... ok
[INFO] [stderr] 1 | void foo() { enum E { A } 123; }
[INFO] [stdout] test tests::pp_macros::test_counter_macro ... ok
[INFO] [stderr]   |                           ^^^
[INFO] [stdout] test tests::pp_macros::test_defer_recursive_expansion ... ok
[INFO] [stderr] error: Unexpected token: expected Expected type specifiers, found 123
[INFO] [stdout] test tests::pp_macros::test_deferred_macro_expansion ... ok
[INFO] [stderr]  --> example.c:1:21
[INFO] [stdout] test tests::pp_macros::test_empty_macro_arg ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::pp_macros::test_complex_macro_expansion_and_recursion_limit ... ok
[INFO] [stderr] 1 | void foo() { extern 123; }
[INFO] [stdout] test tests::pp_macros::test_different_macro_redefinition_warns ... ok
[INFO] [stderr]   |                     ^^^
[INFO] [stdout] test tests::pp_macros::test_gnu_comma_elision_with_empty_variadic_arg ... ok
[INFO] [stderr] error: Unexpected token: expected ), found int
[INFO] [stdout] test tests::pp_macros::test_expand_tokens_magic_macro_coverage ... ok
[INFO] [stderr]  --> example.c:1:10
[INFO] [stdout] test tests::pp_macros::test_expand_tokens_pragma_operator_coverage ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::pp_macros::test_gcc_recursive_macro_painted_blue ... ok
[INFO] [stderr] 1 | void foo(int __attribute__ noreturn);
[INFO] [stdout] test tests::pp_macros::test_define_with_trailing_comment ... ok
[INFO] [stderr]   |          ^^^
[INFO] [stdout] test tests::pp_macros::test_file_macro ... ok
[INFO] [stderr] <unknown>: Unexpected token: expected Expected type specifiers, found end of file
[INFO] [stdout] test tests::pp_macros::test_directive_in_macro_args ... ok
[INFO] [stdout] test tests::pp_macros::test_gcc_version_macros ... ok
[INFO] [stdout] test tests::pp_macros::test_function_like_macro_not_expanded_when_not_followed_by_paren ... ok
[INFO] [stdout] test tests::pp_macros::test_gcc_extension_keywords ... ok
[INFO] [stdout] test tests::pp_macros::test_gnu_comma_swallowing_va_args ... ok
[INFO] [stdout] test tests::pp_macros::test_gnu_comma_swallowing ... ok
[INFO] [stdout] test tests::pp_macros::test_macro_recursive_pasting ... ok
[INFO] [stdout] test tests::pp_macros::test_int_constant_macros ... ok
[INFO] [stdout] test tests::pp_macros::test_identical_builtin_redefinition_no_warning ... ok
[INFO] [stdout] test tests::pp_macros::test_macro_expansion_creates_incomplete_nested_call ... ok
[INFO] [stdout] test tests::pp_macros::test_gnu_named_variadic_macros ... ok
[INFO] [stdout] test tests::pp_macros::test_identical_macro_redefinition_no_warning ... ok
[INFO] [stdout] test tests::pp_macros::test_nested_macro_expansion_self_referential ... ok
[INFO] [stdout] test tests::pp_macros::test_indirect_recursion_prosser ... ok
[INFO] [stdout] test tests::pp_macros::test_nested_macros_with_recursion_produce_incomplete_call ... ok
[INFO] [stdout] test tests::pp_macros::test_parameter_macro_definition_and_expansion ... ok
[INFO] [stdout] test tests::pp_macros::test_magic_macros ... ok
[INFO] [stdout] test tests::pp_conditionals::test_constant_expressions ... ok
[INFO] [stdout] test tests::pp_macros::test_paren_comma_protection ... ok
[INFO] [stdout] test tests::pp_macros::test_placemarker_concatenation ... ok
[INFO] [stdout] test tests::pp_macros::test_nested_macro_produces_incomplete_function_call ... ok
[INFO] [stdout] test tests::pp_macros::test_paste_numbers ... ok
[INFO] [stdout] test tests::pp_macros::test_macro_invalid_parameters_and_edge_cases ... ok
[INFO] [stdout] test tests::pp_macros::test_paste_va_args ... ok
[INFO] [stdout] test tests::pp_macros::test_macro_expansion_arguments_hide_set_regression ... ok
[INFO] [stdout] test tests::pp_macros::test_nested_macro_expansion_in_args ... ok
[INFO] [stdout] test tests::pp_macros::test_recursive_macro_expansion_regression ... ok
[INFO] [stdout] test tests::pp_macros::test_macro_expansion_chain_not_blocked ... ok
[INFO] [stdout] test tests::pp_macros::test_simple_macro_definition_and_expansion ... ok
[INFO] [stderr] warning: Redefinition of built-in macro '__DATE__' [-Wbuiltin-macro-redefined]
[INFO] [stderr]  --> <test>:2:9
[INFO] [stderr]   |
[INFO] [stderr] 2 | #define __DATE__ "123"
[INFO] [stderr]   |         ^
[INFO] [stderr] warning: Undefining built-in macro '__DATE__' [-Wbuiltin-macro-redefined]
[INFO] [stdout] test tests::pp_macros::test_placemarker_concatenation_chained ... ok
[INFO] [stderr]  --> <test>:2:8
[INFO] [stdout] test tests::pp_macros::test_va_opt_empty ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::pp_macros::test_type_builtins ... ok
[INFO] [stderr] 2 | #undef __DATE__
[INFO] [stdout] test tests::pp_macros::test_recursive_expansion_issue ... ok
[INFO] [stderr]   |        ^
[INFO] [stderr] <unknown>: Unexpected token: expected Expected declarator or identifier after type specifier, found end of file
[INFO] [stdout] test tests::pp_macros::test_redefine_builtin_macro_should_fail ... ok
[INFO] [stdout] test tests::pp_macros::test_placemarker_concatenation_with_prefix ... ok
[INFO] [stdout] test tests::pp_macros::test_undef_builtin_macro_should_warn ... ok
[INFO] [stdout] test tests::pp_macros::test_va_opt_basic ... ok
[INFO] [stdout] test tests::pp_macros::test_stddef_stdint_integration ... ok
[INFO] [stdout] test tests::pp_macros::test_stringification_escaping_literal ... ok
[INFO] [stdout] test tests::pp_macros::test_stdint_h_constant_macros ... ok
[INFO] [stdout] test tests::pp_macros::test_va_opt_stringification ... ok
[INFO] [stderr] warning: __VA_ARGS__ can only appear in the expansion of a C99 variadic macro [-Wvariadic-macros]
[INFO] [stderr]  --> <test>:1:12
[INFO] [stderr]   |
[INFO] [stderr] 1 | #define A4(__VA_ARGS__)
[INFO] [stderr]   |            ^
[INFO] [stderr] error: embedding a directive within macro arguments is not portable
[INFO] [stdout] test tests::pp_macros::test_stringification_whitespace_handling ... ok
[INFO] [stderr]  --> example.c:7:9
[INFO] [stdout] test tests::pp_macros::test_macro_parameter_list_errors ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::pp_pedantic_dollar::test_dollar_in_identifier_no_pedantic ... ok
[INFO] [stderr] 7 |         #if USE_FEATURE_B
[INFO] [stdout] test tests::regr_different_pointer_levels_warning::test_different_pointer_levels_warning ... ok
[INFO] [stderr]   |         ^
[INFO] [stdout] test tests::pp_pedantic_directives::test_directive_in_macro_args_pedantic_error ... ok
[INFO] [stderr] error: embedding a directive within macro arguments is not portable
[INFO] [stderr]  --> example.c:9:9
[INFO] [stderr]   |
[INFO] [stderr] 9 |         #else
[INFO] [stderr]   |         ^
[INFO] [stderr] error: embedding a directive within macro arguments is not portable
[INFO] [stderr]   --> example.c:11:9
[INFO] [stderr]    |
[INFO] [stderr] 11 |         #endif
[INFO] [stderr]    |         ^
[INFO] [stderr] warning: incompatible pointer types passing 'int**' to parameter of type 'const int*' [-Wincompatible-pointer-types]
[INFO] [stdout] test tests::pp_pedantic_directives::test_directive_in_macro_args_pedantic_warning ... ok
[INFO] [stderr]  --> example.c:6:28
[INFO] [stderr]   |
[INFO] [stderr] 6 |             const int *b = &y;
[INFO] [stderr]   |                            ^^
[INFO] [stderr] warning: embedding a directive within macro arguments is not portable [-Wembedded-directive]
[INFO] [stderr]  --> example.c:7:9
[INFO] [stderr]   |
[INFO] [stderr] 7 |         #if USE_FEATURE_B
[INFO] [stderr]   |         ^
[INFO] [stderr] error: Unexpected token: expected ], found ;
[INFO] [stderr]  --> example.c:1:10
[INFO] [stderr]   |
[INFO] [stderr] 1 | int x[10 ;
[INFO] [stderr]   |          ^
[INFO] [stderr] warning: embedding a directive within macro arguments is not portable [-Wembedded-directive]
[INFO] [stderr]  --> example.c:9:9
[INFO] [stderr]   |
[INFO] [stderr] 9 |         #else
[INFO] [stderr]   |         ^
[INFO] [stderr] warning: embedding a directive within macro arguments is not portable [-Wembedded-directive]
[INFO] [stderr]   --> example.c:11:9
[INFO] [stderr]    |
[INFO] [stderr] 11 |         #endif
[INFO] [stderr]    |         ^
[INFO] [stderr] warning: '$' in identifier or number [-Wdollar-in-identifier-extension]
[INFO] [stderr]  --> example.c:3:21
[INFO] [stderr]   |
[INFO] [stderr] 3 |             int x = 0$;
[INFO] [stderr]   |                     ^
[INFO] [stdout] test tests::pp_pedantic_dollar::test_dollar_in_number_pedantic_warning ... ok
[INFO] [stderr] warning: incompatible pointer types passing 'double*' to parameter of type 'int*' [-Wincompatible-pointer-types]
[INFO] [stderr]  --> example.c:6:15
[INFO] [stderr]   |
[INFO] [stderr] 6 |             f(d);
[INFO] [stderr]   |               ^
[INFO] [stdout] test tests::regr_incompatible_pointer_warning::test_incompatible_pointer_warning_function_call ... ok
[INFO] [stderr] error: '$' in identifier or number
[INFO] [stderr]  --> example.c:3:17
[INFO] [stderr]   |
[INFO] [stderr] 3 |             int x$ = 1;
[INFO] [stderr]   |                 ^
[INFO] [stderr] error: incomplete type 'struct _x'
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             *p;
[INFO] [stderr]   |             ^^
[INFO] [stdout] test tests::regr_incomplete_deref_statement::test_incomplete_deref_statement_error ... ok
[INFO] [stderr] error: expression is not an integer constant expression
[INFO] [stderr]  --> example.c:4:26
[INFO] [stderr]   |
[INFO] [stderr] 4 |             int a[2] = {[i]=1};
[INFO] [stderr]   |                          ^
[INFO] [stdout] test tests::pp_macros::test_va_args_stringification ... ok
[INFO] [stdout] test tests::regr_nonconstant_array_designator::test_nonconstant_array_designator_rejected ... ok
[INFO] [stderr] warning: '$' in identifier or number [-Wdollar-in-identifier-extension]
[INFO] [stderr]  --> example.c:3:17
[INFO] [stderr]   |
[INFO] [stderr] 3 |             int x$ = 1;
[INFO] [stderr]   |                 ^
[INFO] [stderr] error: Unexpected token: expected ), found ;
[INFO] [stderr]  --> example.c:1:19
[INFO] [stderr]   |
[INFO] [stderr] 1 | void foo(int ( * );
[INFO] [stderr]   |                   ^
[INFO] [stdout] test tests::pp_pragma_once_dedup::test_pragma_once_path_dedup ... ok
[INFO] [stdout] test tests::pp_pedantic_dollar::test_dollar_in_identifier_pedantic_error ... ok
[INFO] [stdout] test tests::pp_macros::test_variadic_macro_rescan_bug ... ok
[INFO] [stdout] test tests::pp_pedantic_directives::test_directive_in_macro_args_no_pedantic ... ok
[INFO] [stdout] test tests::pp_pedantic_dollar::test_dollar_in_identifier_pedantic_warning ... ok
[INFO] [stdout] test tests::regr_pp_short_circuit::test_pp_conditional_unsigned_promotion ... ok
[INFO] [stdout] test tests::regr_pp_short_circuit::test_pp_logical_and_short_circuit ... ok
[INFO] [stdout] test tests::regr_pp_short_circuit::test_pp_logical_or_short_circuit ... ok
[INFO] [stderr] warning: excess elements in array initializer [-Wexcess-initializers]
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |         int a[2] = { [0 ... 1] = 1, 2 }; // Warning: index 2 is out of bounds
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::regr_pp_short_circuit::test_pp_conditional_short_circuit ... ok
[INFO] [stdout] test tests::regr_nonconstant_array_designator::test_constant_array_designator_accepted ... ok
[INFO] [stdout] test tests::regr_init_range::test_init_range_excess_elements ... ok
[INFO] [stderr] error: Unexpected token: expected ), found ;
[INFO] [stderr]  --> example.c:1:23
[INFO] [stderr]   |
[INFO] [stderr] 1 | void foo(int ( * [ ] );
[INFO] [stderr]   |                       ^
[INFO] [stdout] test tests::regr_shadowing::test_func_param_shadows_func_name ... ok
[INFO] [stdout] test tests::regr_tag_kind_mismatch::test_struct_enum_mismatch ... ok
[INFO] [stderr] error: Unexpected token: expected ), found :
[INFO] [stderr]  --> example.c:1:16
[INFO] [stderr]   |
[INFO] [stderr] 1 | void foo(int x : 5);
[INFO] [stderr]   |                ^
[INFO] [stdout] test tests::regr_tag_kind_mismatch::test_typedef_struct_union_mismatch ... ok
[INFO] [stdout] test tests::regr_tag_kind_mismatch::test_enum_struct_mismatch ... ok
[INFO] [stdout] test tests::regr_union_cast::test_union_cast_extension ... ok
[INFO] [stderr] warning: excess elements in record initializer [-Wexcess-initializers]
[INFO] [stderr]  --> example.c:3:44
[INFO] [stdout] test tests::regr_struct_bitfield::test_unnamed_bitfield_init_excess_elements ... ok
[INFO] [stderr]   |
[INFO] [stderr] 3 |             struct {int :1, a, :1, b;} s = {1,2,3,4};
[INFO] [stderr]   |                                            ^^^^^^^^^
[INFO] [stdout] test tests::semantic_alignment::test_alignas_on_bitfield_fails ... ok
[INFO] [stdout] test tests::regr_union_cast::test_union_cast_invalid_type_rejected ... ok
[INFO] [stderr] error: Unexpected token: expected ), found :
[INFO] [stderr]  --> example.c:1:14
[INFO] [stderr]   |
[INFO] [stderr] 1 | void foo(int : 5);
[INFO] [stderr]   |              ^
[INFO] [stderr] error: Unexpected token: expected ';' after declaration, found :
[INFO] [stderr]  --> example.c:1:7
[INFO] [stderr]   |
[INFO] [stderr] 1 | int x : 5;
[INFO] [stderr]   |       ^
[INFO] [stderr] error: #error directive: "custom error"
[INFO] [stderr]  --> example.c:1:7
[INFO] [stderr]   |
[INFO] [stderr] 1 | #error "custom error"
[INFO] [stderr]   |       ^
[INFO] [stderr] error: #error directive: "custom error"
[INFO] [stderr]  --> example.c:1:7
[INFO] [stderr]   |
[INFO] [stderr] 1 | #error "custom error"
[INFO] [stderr]   |       ^
[INFO] [stderr] error: type mismatch: expected scalar type, found union (anonymous)
[INFO] [stderr]  --> example.c:4:15
[INFO] [stderr]   |
[INFO] [stderr] 4 |             ((t)n);
[INFO] [stderr]   |               ^^^
[INFO] [stderr] error: Unmatched #endif
[INFO] [stderr]  --> example.c:1:2
[INFO] [stderr]   |
[INFO] [stderr] 1 | #endif
[INFO] [stderr]   |  ^
[INFO] [stderr]   |
[INFO] [stderr]   = help: this #endif does not have a matching #if, #ifdef, or #ifndef
[INFO] [stdout] test tests::semantic_alignment::test_alignas_alias_on_bitfield_fails ... ok
[INFO] [stdout] test tests::semantic_alignment::test_gnu_aligned_on_bitfield_passes ... ok
[INFO] [stdout] test tests::semantic_alignment::test_mixed_alignment_on_bitfield_fails ... ok
[INFO] [stdout] test tests::semantic_alignment::test_gnu_alignas_alias_on_bitfield_passes ... ok
[INFO] [stdout] test tests::regr_typeof_ternary::test_typeof_ternary_with_decay_and_void ... ok
[INFO] [stderr] error: #error directive: "fail"
[INFO] [stderr]  --> example.c:1:7
[INFO] [stderr]   |
[INFO] [stderr] 1 | #error "fail"
[INFO] [stderr]   |       ^
[INFO] [stderr] error: #error directive: "fail"
[INFO] [stderr]  --> example.c:1:7
[INFO] [stderr]   |
[INFO] [stderr] 1 | #error "fail"
[INFO] [stderr]   |       ^
[INFO] [stderr] error: Unexpected token: expected identifier, literal, or '(', found ;
[INFO] [stderr]  --> example.c:1:10
[INFO] [stderr]   |
[INFO] [stderr] 1 | int x = +; }
[INFO] [stderr]   |          ^
[INFO] [stderr] error: Unexpected token: expected declaration specifiers, found }
[INFO] [stderr]  --> example.c:1:12
[INFO] [stderr]   |
[INFO] [stderr] 1 | int x = +; }
[INFO] [stderr]   |            ^
[INFO] [stderr] <unknown>: Unexpected token: expected identifier, literal, or '(', found end of file
[INFO] [stderr] <unknown>: Unexpected token: expected identifier, literal, or '(', found end of file
[INFO] [stderr] <unknown>: Unexpected token: expected identifier, literal, or '(', found end of file
[INFO] [stderr] <unknown>: Unexpected token: expected }, found end of file
[INFO] [stderr] error: Unexpected token: expected identifier, literal, or '(', found ;
[INFO] [stderr]  --> example.c:1:25
[INFO] [stderr]   |
[INFO] [stderr] 1 | void foo() { { int x = +; } }
[INFO] [stderr]   |                         ^
[INFO] [stderr] error: '_Alignof' applied to an expression is a GNU extension
[INFO] [stderr]  --> example.c:4:20
[INFO] [stderr]   |
[INFO] [stderr] 4 |             return _Alignof x;
[INFO] [stderr]   |                    ^^^^^^^^^^
[INFO] [stdout] test tests::semantic_alignof_expr::test_alignof_expression_pedantic ... ok
[INFO] [stderr] error: Unexpected token: expected declaration specifiers, found [
[INFO] [stderr]  --> example.c:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | [[maybe_unused]]
[INFO] [stderr]   | ^
[INFO] [stdout] test tests::parser_errors::test_parser_errors ... ok
[INFO] [stdout] test tests::parser_types::test_type_spec_combinations ... ok
[INFO] [stdout] test tests::semantic_arrays::test_array_declaration_with_constant_size ... ok
[INFO] [stdout] test tests::semantic_arrays::test_array_of_incomplete_type ... ok
[INFO] [stdout] test tests::semantic_arrays::test_array_of_pointers_static_pass ... ok
[INFO] [stdout] test tests::semantic_arrays::test_array_of_qualified_type ... ok
[INFO] [stdout] test tests::semantic_arrays::test_array_parameter_qualifiers_pass ... ok
[INFO] [stderr] error: cannot assign to read-only location
[INFO] [stderr]  --> example.c:1:27
[INFO] [stderr]   |
[INFO] [stderr] 1 | void f(int a[const 10]) { a = 0; }
[INFO] [stderr]   |                           ^
[INFO] [stderr] warning: address of array 'a' will always evaluate to 'true' [-Wtautological-pointer-compare]
[INFO] [stderr]  --> example.c:4:17
[INFO] [stderr]   |
[INFO] [stderr] 4 |             if (a) {
[INFO] [stdout] test tests::semantic_arrays::test_array_parameter_static_pass ... ok
[INFO] [stderr]   |                 ^
[INFO] [stdout] test tests::semantic_arrays::test_array_in_condition_warning ... ok
[INFO] [stdout] test tests::semantic_arrays::test_array_qualifier_not_outermost_fail ... ok
[INFO] [stdout] test tests::semantic_arrays::test_array_static_not_outermost_fail ... ok
[INFO] [stdout] test tests::semantic_arrays::test_array_qualifiers_outside_parameter_fail ... ok
[INFO] [stdout] test tests::semantic_arrays::test_array_static_outside_parameter_fail ... ok
[INFO] [stdout] test tests::semantic_arrays::test_multidimensional_array_qualified ... ok
[INFO] [stdout] test tests::semantic_arrays::test_negative_array_size ... ok
[INFO] [stdout] test tests::semantic_arrays::test_pointer_to_array_static_fail ... ok
[INFO] [stdout] test tests::semantic_arrays::test_sizeof_array_deref_global ... ok
[INFO] [stdout] test tests::semantic_arrays::test_sizeof_array_constant_expression ... ok
[INFO] [stdout] test tests::semantic_arrays::test_sizeof_multi_dim_array_deref ... ok
[INFO] [stdout] test tests::semantic_arrays::test_sizeof_array_deref_in_enum ... ok
[INFO] [stdout] test tests::semantic_arrays::test_sizeof_vla_supported ... ok
[INFO] [stdout] test tests::semantic_arrays::test_sizeof_string_literal_constant_expression ... ok
[INFO] [stdout] test tests::semantic_arrays::test_vla_in_block_scope ... ok
[INFO] [stdout] test tests::semantic_arrays::test_vla_ice_fix ... ok
[INFO] [stdout] test tests::semantic_alignof_expr::test_alignof_expression_sizeof_interaction ... ok
[INFO] [stdout] test tests::semantic_arrays::test_zero_sized_array ... ok
[INFO] [stdout] test tests::semantic_arrays::test_zero_sized_array_pedantic ... ok
[INFO] [stdout] test tests::regr_struct_bitfield::test_struct_bitfield_parsing_and_layout ... ok
[INFO] [stdout] test tests::semantic_assignment_coverage::test_compound_assignments ... ok
[INFO] [stdout] test tests::semantic_atomic::test_atomic_qualifier_on_void_prohibited ... ok
[INFO] [stdout] test tests::semantic_atomic::test_atomic_qualifier_constraints ... ok
[INFO] [stdout] test tests::semantic_alignof_expr::test_alignof_expression_basic ... ok
[INFO] [stdout] test tests::semantic_atomic::test_atomic_specifier_on_void_prohibited ... ok
[INFO] [stdout] test tests::semantic_atomic::test_atomic_specifier_success ... ok
[INFO] [stdout] test tests::semantic_auto_type::test_auto_type_complex_declarator ... ok
[INFO] [stdout] test tests::semantic_atomic::test_atomic_specifier_constraints ... ok
[INFO] [stdout] test tests::regr_struct_bitfield::test_bitfield_assignment_truncation ... ok
[INFO] [stdout] test tests::semantic_auto_type::test_auto_type_basic ... ok
[INFO] [stdout] test tests::semantic_auto_type::test_auto_type_decay ... ok
[INFO] [stdout] test tests::semantic_alignof_expr::test_alignof_expression_alignas ... ok
[INFO] [stderr] warning: use of GNU designated initializer range extension [-Wgnu-designated-init]
[INFO] [stderr]  --> test.c:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 |             [0 ... 4].x = 1,
[INFO] [stderr]   |                    ^
[INFO] [stderr] warning: use of GNU designated initializer range extension [-Wgnu-designated-init]
[INFO] [stderr]  --> test.c:6:20
[INFO] [stderr]   |
[INFO] [stderr] 6 |             [0 ... 4].y[0 ... 2] = 2,
[INFO] [stderr]   |                    ^
[INFO] [stderr] warning: use of GNU designated initializer range extension [-Wgnu-designated-init]
[INFO] [stderr]  --> test.c:6:31
[INFO] [stderr]   |
[INFO] [stderr] 6 |             [0 ... 4].y[0 ... 2] = 2,
[INFO] [stderr]   |                               ^
[INFO] [stderr] warning: use of GNU designated initializer range extension [-Wgnu-designated-init]
[INFO] [stderr]  --> test.c:7:20
[INFO] [stderr]   |
[INFO] [stderr] 7 |             [2 ... 3].y[1 ... 2] = 3
[INFO] [stderr]   |                    ^
[INFO] [stdout] test tests::semantic_auto_type::test_auto_type_function_return ... ok
[INFO] [stderr] warning: use of GNU designated initializer range extension [-Wgnu-designated-init]
[INFO] [stderr]  --> test.c:7:31
[INFO] [stderr]   |
[INFO] [stderr] 7 |             [2 ... 3].y[1 ... 2] = 3
[INFO] [stderr]   |                               ^
[INFO] [stdout] test tests::semantic_auto_type::test_auto_type_multiple_declarators ... ok
[INFO] [stdout] test tests::semantic_auto_type::test_auto_type_initializer_list ... ok
[INFO] [stdout] test tests::semantic_auto_type::test_auto_type_no_initializer ... ok
[INFO] [stderr] error: cannot assign to read-only location
[INFO] [stdout] test tests::regr_struct_bitfield::test_anonymous_bitfield_alignment ... ok
[INFO] [stderr]  --> example.c:4:13
[INFO] [stdout] test tests::semantic_auto_type::test_auto_type_qualifiers ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::regr_init_range::test_init_range_nested_aggregate_override ... ok
[INFO] [stderr] 4 |             a = 2;
[INFO] [stdout] test tests::semantic_binary_conversion::test_binary_conversion_complex_cast ... ok
[INFO] [stderr]   |             ^
[INFO] [stdout] test tests::semantic_bitfield::test_bitfield_promotion ... ok
[INFO] [stderr] error: Unexpected token: expected ;, found a
[INFO] [stdout] test tests::semantic_bool_literals::test_c23_bool_literals_const_eval ... ok
[INFO] [stderr]  --> example.c:3:18
[INFO] [stdout] test tests::semantic_bitfield::test_bitfield_promotion_unsigned ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::semantic_bool_literals::test_c23_bool_literals_basic ... ok
[INFO] [stderr] 3 |             bool a = true;
[INFO] [stdout] test tests::semantic_bool_literals::test_c23_bool_literals_types ... ok
[INFO] [stderr]   |                  ^
[INFO] [stdout] test tests::regr_init_range::test_init_range_index_advancement ... ok
[INFO] [stderr] error: Unexpected token: expected ;, found b
[INFO] [stdout] test tests::semantic_builtin_complex::test_builtin_complex_basic ... ok
[INFO] [stderr]  --> example.c:4:18
[INFO] [stderr]   |
[INFO] [stderr] 4 |             bool b = false;
[INFO] [stderr]   |                  ^
[INFO] [stderr] warning: use of GNU designated initializer range extension [-Wgnu-designated-init]
[INFO] [stderr]  --> test.c:3:29
[INFO] [stderr]   |
[INFO] [stderr] 3 |         int a[5] = { [0 ... 2] = 1, 2, 3 };
[INFO] [stderr]   |                             ^
[INFO] [stdout] test tests::semantic_auto_type::test_auto_type_forbidden_contexts ... ok
[INFO] [stdout] test tests::semantic_bool_literals::test_c23_bool_literals_pp ... ok
[INFO] [stdout] test tests::regr_mixed_sign_comp::test_mixed_sign_comparison_int_long ... ok
[INFO] [stderr] error: Invalid operand for unary operation: have 'struct S'
[INFO] [stderr]  --> example.c:5:31
[INFO] [stderr]   |
[INFO] [stderr] 5 |             __builtin_complex(s, 1.0);
[INFO] [stdout] test tests::semantic_builtin_complex::test_builtin_complex_execution ... ok
[INFO] [stderr]   |                               ^
[INFO] [stdout] test tests::semantic_builtin_complex::test_builtin_complex_invalid_operand ... ok
[INFO] [stderr] error: Invalid operand for unary operation: have 'struct S'
[INFO] [stdout] test tests::regr_struct_bitfield::test_unnamed_bitfield_init_exact_elements ... ok
[INFO] [stderr]  --> example.c:5:36
[INFO] [stderr]   |
[INFO] [stderr] 5 |             __builtin_complex(1.0, s);
[INFO] [stderr]   |                                    ^
[INFO] [stdout] test tests::semantic_builtin_complex::test_builtin_complex_invalid_operand_2 ... ok
[INFO] [stdout] test tests::semantic_caserange::test_case_range_coverage ... ok
[INFO] [stderr] error: duplicate case value '5'
[INFO] [stderr]  --> example.c:8:21
[INFO] [stderr]   |
[INFO] [stderr] 8 |                     break;
[INFO] [stderr]   |                     ^^^^^^
[INFO] [stdout] test tests::semantic_caserange::test_case_range_overlap ... ok
[INFO] [stderr] error: duplicate case value '5'
[INFO] [stderr]  --> example.c:8:21
[INFO] [stderr]   |
[INFO] [stderr] 8 |                     break;
[INFO] [stderr]   |                     ^^^^^^
[INFO] [stdout] test tests::semantic_caserange::test_case_range_overlap_reverse ... ok
[INFO] [stdout] test tests::semantic_caserange::test_large_case_range_timeout ... ok
[INFO] [stdout] test tests::semantic_cleanup_diag::test_cleanup_on_static_local ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_complex_addition ... ok
[INFO] [stdout] test tests::semantic_alignof_expr::test_alignof_max_align_t ... ok
[INFO] [stdout] test tests::semantic_builtin_complex::test_builtin_complex_int ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_complex_atomic ... ok
[INFO] [stdout] test tests::semantic_cleanup_diag::test_cleanup_on_typedef ... ok
[INFO] [stdout] test tests::semantic_builtin_complex::test_builtin_complex_promotion ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_complex_cmplx_const_eval ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_complex_conjugate ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_complex_cmplx_signed_zero ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_complex_comparison_v2 ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_complex_comparison ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_complex_division ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_complex_declarations ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_complex_inc_dec ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_complex_lvalue_in_expressions ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_complex_ops_double ... ok
[INFO] [stdout] test tests::semantic_alignof_expr::test_alignof_expression_nested ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_complex_ops_float ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_complex_h_cmplx ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_complex_real_imag_operators ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_complex_i_usage ... ok
[INFO] [stderr] error: Invalid operands for binary operation: have '_Complex float' and '_Complex float'
[INFO] [stderr]  --> example.c:4:24
[INFO] [stderr]   |
[INFO] [stderr] 4 |             int res = (a < b);
[INFO] [stderr]   |                        ^
[INFO] [stdout] test tests::semantic_complex_types::test_complex_subtraction ... ok
[INFO] [stderr] error: Expression is not assignable (not an lvalue)
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             __imag__ d = 1.0;
[INFO] [stderr]   |             ^^^^^^^^^^
[INFO] [stdout] test tests::semantic_complex_types::test_complex_real_lvalue ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_imag_lvalue_rejected ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_complex_relational_error - should panic ... ok
[INFO] [stdout] test tests::semantic_composite::test_array_completion_composite ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_real_type_lvalue_real_imag ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_complex_real_interaction ... ok
[INFO] [stdout] test tests::regr_mixed_sign_comp::test_mixed_sign_comparison_long_long ... ok
[INFO] [stdout] test tests::semantic_composite::test_atomic_bitfield_prohibited ... ok
[INFO] [stdout] test tests::semantic_composite::test_array_completion_reverse ... ok
[INFO] [stdout] test tests::semantic_composite::test_atomic_typedef_bitfield_prohibited ... ok
[INFO] [stdout] test tests::semantic_composite::test_atomic_specifier_bitfield_prohibited ... ok
[INFO] [stdout] test tests::semantic_composite::test_atomic_volatile_bitfield_prohibited ... ok
[INFO] [stdout] test tests::semantic_composite::test_bitfield_width_exceeds_type ... ok
[INFO] [stdout] test tests::semantic_composite::test_bitfield_zero_width_unnamed ... ok
[INFO] [stdout] test tests::semantic_composite::test_conflicting_array_composite ... ok
[INFO] [stdout] test tests::semantic_composite::test_array_of_pointers_composite ... ok
[INFO] [stdout] test tests::semantic_arrays::test_vla_sizeof_parameters ... ok
[INFO] [stdout] test tests::semantic_composite::test_fam_in_otherwise_empty_struct_prohibited ... ok
[INFO] [stdout] test tests::semantic_composite::test_duplicate_member ... ok
[INFO] [stdout] test tests::semantic_composite::test_function_composite_type ... ok
[INFO] [stdout] test tests::semantic_composite::test_fam_not_last_prohibited ... ok
[INFO] [stdout] test tests::semantic_composite::test_bitfield_invalid_type ... ok
[INFO] [stderr] error: member reference base type 'int' is not a structure or union
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             x.field = 10;
[INFO] [stdout] test tests::semantic_composite::test_sizeof_based_array_size_in_struct ... ok
[INFO] [stderr]   |             ^^^^^^^
[INFO] [stdout] test tests::semantic_composite::test_vla_member_prohibited ... ok
[INFO] [stdout] test tests::semantic_composite::test_unnamed_atomic_bitfield_prohibited ... ok
[INFO] [stdout] test tests::semantic_composite::test_fam_in_union_prohibited ... ok
[INFO] [stdout] test tests::semantic_composite::test_member_access_on_non_struct ... ok
[INFO] [stdout] test tests::semantic_composite::test_incomplete_struct_member_prohibited ... ok
[INFO] [stdout] test tests::semantic_composite::test_function_member_prohibited ... ok
[INFO] [stdout] test tests::semantic_composite::test_void_member_prohibited ... ok
[INFO] [stdout] test tests::semantic_composite::test_volatile_bitfield_allowed ... ok
[INFO] [stdout] test tests::semantic_const_eval::test_alignof ... ok
[INFO] [stdout] test tests::semantic_const_eval::test_arithmethic_with_predence ... ok
[INFO] [stderr] warning: use of GNU designated initializer range extension [-Wgnu-designated-init]
[INFO] [stderr]  --> test.c:2:24
[INFO] [stderr]   |
[INFO] [stderr] 2 |     int a[] = { [0 ... 2] = 1, 10 };
[INFO] [stderr]   |                        ^
[INFO] [stdout] test tests::semantic_const_eval::test_arithmetic ... ok
[INFO] [stdout] test tests::semantic_const_eval::test_const_eval_char_float_2 ... ok
[INFO] [stdout] test tests::semantic_cleanup_diag::test_cleanup_on_global ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_complex_multiplication ... ok
[INFO] [stdout] test tests::regr_init_range::test_init_range_deduce_size ... ok
[INFO] [stdout] test tests::semantic_const_eval::test_enum_constants ... ok
[INFO] [stdout] test tests::semantic_const_eval::test_const_eval_member_access_in_array_size ... ok
[INFO] [stdout] test tests::semantic_const_eval::test_div_by_zero ... ok
[INFO] [stdout] test tests::semantic_const_eval::test_bitwise ... ok
[INFO] [stdout] test tests::semantic_const_eval::test_const_eval_char_type ... ok
[INFO] [stdout] test tests::semantic_arrays::test_vla_scoping_advanced ... ok
[INFO] [stdout] test tests::semantic_const_eval::test_builtin_fabs_eval_test ... ok
[INFO] [stdout] test tests::semantic_const_eval::test_builtin_functions ... ok
[INFO] [stdout] test tests::semantic_const_eval::test_offsetof ... ok
[INFO] [stdout] test tests::semantic_const_eval::test_overflow_wrapping ... ok
[INFO] [stdout] test tests::semantic_const_eval::test_generic_selection ... ok
[INFO] [stdout] test tests::semantic_const_eval::test_comparisons ... ok
[INFO] [stdout] test tests::semantic_const_eval::test_logical ... ok
[INFO] [stdout] test tests::semantic_const_eval::test_unary_float_eval ... ok
[INFO] [stdout] test tests::semantic_const_eval::test_logical_short_circuit ... ok
[INFO] [stdout] test tests::semantic_const_eval::test_unsigned_arithmetic ... ok
[INFO] [stderr] error: cannot assign to read-only location
[INFO] [stderr]  --> example.c:8:13
[INFO] [stderr]   |
[INFO] [stderr] 8 |             s1 = s2;
[INFO] [stderr]   |             ^^
[INFO] [stderr] error: duplicate case value '1'
[INFO] [stderr]  --> example.c:5:25
[INFO] [stderr]   |
[INFO] [stderr] 5 |                 case 1: break;
[INFO] [stderr]   |                         ^^^^^^
[INFO] [stdout] test tests::semantic_const_recursive::test_const_array_member ... ok
[INFO] [stdout] test tests::semantic_control_flow::test_duplicate_case ... ok
[INFO] [stdout] test tests::semantic_const_eval::test_ternary ... ok
[INFO] [stderr] error: cannot assign to read-only location
[INFO] [stderr]  --> example.c:8:13
[INFO] [stderr]   |
[INFO] [stderr] 8 |             s1 = s2;
[INFO] [stderr]   |             ^^
[INFO] [stdout] test tests::semantic_const_recursive::test_const_pointer_member ... ok
[INFO] [stderr] error: cannot assign to read-only location
[INFO] [stderr]  --> example.c:8:13
[INFO] [stderr]   |
[INFO] [stderr] 8 |             s1 = s2;
[INFO] [stderr]   |             ^^
[INFO] [stdout] test tests::semantic_const_recursive::test_const_pointer_array_member ... ok
[INFO] [stderr] error: function 'die' declared '_Noreturn' can fall off the end
[INFO] [stderr]  --> example.c:2:9
[INFO] [stderr]   |
[INFO] [stderr] 2 | /         _Noreturn void die(void) {
[INFO] [stderr] 3 | |             for (;;) {
[INFO] [stderr] 4 | |                 break;
[INFO] [stderr] 5 | |             }
[INFO] [stderr]   | |______________^
[INFO] [stdout] test tests::semantic_control_flow::test_noreturn_for_break_falls_through ... ok
[INFO] [stdout] test tests::semantic_control_flow::test_duplicate_label ... ok
[INFO] [stderr] error: expression in 'case' label is not an integer constant expression
[INFO] [stderr]  --> example.c:6:22
[INFO] [stderr]   |
[INFO] [stderr] 6 |                 case y: break;
[INFO] [stderr]   |                      ^
[INFO] [stdout] test tests::semantic_control_flow::test_rejects_non_constant_case_label ... ok
[INFO] [stdout] test tests::semantic_control_flow::test_goto_into_block_skips_init ... ok
[INFO] [stderr] error: break statement not in loop or switch
[INFO] [stderr]  --> example.c:3:13
[INFO] [stderr]   |
[INFO] [stderr] 3 |             break;
[INFO] [stderr]   |             ^^^^^^
[INFO] [stdout] test tests::semantic_bitfield::test_complex_bitfield_init_shift ... ok
[INFO] [stdout] test tests::semantic_control_flow::test_break_outside_loop ... ok
[INFO] [stdout] test tests::semantic_const_eval::test_sizeof ... ok
[INFO] [stderr] error: switch condition has non-integer type 'float'
[INFO] [stderr]  --> example.c:4:21
[INFO] [stderr]   |
[INFO] [stderr] 4 |             switch (x) {
[INFO] [stderr]   |                     ^
[INFO] [stderr] error: continue statement not in loop statement
[INFO] [stderr]  --> example.c:3:13
[INFO] [stderr]   |
[INFO] [stderr] 3 |             continue;
[INFO] [stderr]   |             ^^^^^^^^^
[INFO] [stdout] test tests::semantic_control_flow::test_for_loop_init_assignment ... ok
[INFO] [stderr] error: cannot assign to read-only location
[INFO] [stderr]   --> example.c:11:13
[INFO] [stderr]    |
[INFO] [stderr] 11 |             o1 = o2;
[INFO] [stderr]    |             ^^
[INFO] [stderr] error: 'case' or 'default' label not in switch statement
[INFO] [stderr]  --> example.c:4:17
[INFO] [stderr]   |
[INFO] [stderr] 4 |                 break;
[INFO] [stderr]   |                 ^^^^^^
[INFO] [stderr] error: break statement not in loop or switch
[INFO] [stderr]  --> example.c:4:17
[INFO] [stderr]   |
[INFO] [stderr] 4 |                 break;
[INFO] [stderr]   |                 ^^^^^^
[INFO] [stdout] test tests::semantic_bitfield::test_nameless_bitfield_init_repro_output ... ok
[INFO] [stdout] test tests::semantic_control_flow::test_goto_label_forward_backward ... ok
[INFO] [stdout] test tests::semantic_control_flow::test_rejects_non_integer_switch_condition ... ok
[INFO] [stdout] test tests::semantic_const_recursive::test_nested_const_array_member ... ok
[INFO] [stdout] test tests::semantic_control_flow::test_noreturn_while_1_infinite ... ok
[INFO] [stdout] test tests::semantic_control_flow::test_continue_outside_loop ... ok
[INFO] [stdout] test tests::semantic_control_flow::test_case_outside_switch ... ok
[INFO] [stdout] test tests::semantic_enums::accepts_boundary_enum_constants ... ok
[INFO] [stdout] test tests::semantic_conversions::test_complex_type_conversions ... ok
[INFO] [stdout] test tests::semantic_enums::test_enum_constant_expression_reference ... ok
[INFO] [stdout] test tests::semantic_conversions::test_usual_arithmetic_conversions_coverage ... ok
[INFO] [stdout] test tests::semantic_enums::test_enum_generic_underlying_type_e0 ... ok
[INFO] [stdout] test tests::semantic_enums::test_enum_constant_expression_basic ... ok
[INFO] [stdout] test tests::semantic_enums::test_enum_generic_underlying_type_e5 ... ok
[INFO] [stdout] test tests::semantic_conversions::test_integer_promotion_bitfield ... ok
[INFO] [stdout] test tests::semantic_enums::test_enum_generic_underlying_type_e1 ... ok
[INFO] [stdout] test tests::semantic_brace_elision::test_nested_struct_string_brace_elision_init ... ok
[INFO] [stdout] test tests::semantic_enums::test_enum_int_negative ... ok
[INFO] [stdout] test tests::semantic_enums::test_enum_long_long_too_small ... ok
[INFO] [stdout] test tests::semantic_conversions::test_integer_promotion_bitfield_wider_than_int ... ok
[INFO] [stdout] test tests::semantic_enums::test_enum_init_with_other_enum ... ok
[INFO] [stdout] test tests::semantic_enums::warns_on_extreme_i64_values ... ok
[INFO] [stdout] test tests::semantic_enums::test_enum_long_long_mixed_range ... ok
[INFO] [stdout] test tests::semantic_enums::test_enum_redefinition_enumerator ... ok
[INFO] [stderr] warning: incompatible pointer types passing 'int*' to parameter of type 'float*' [-Wincompatible-pointer-types]
[INFO] [stderr]  --> example.c:6:13
[INFO] [stderr]   |
[INFO] [stderr] 6 |             f = p;
[INFO] [stderr]   |             ^^^^^
[INFO] [stdout] test tests::semantic_enums::test_enum_unsigned_long_long ... ok
[INFO] [stderr] error: type mismatch: expected struct A, found struct B
[INFO] [stderr]  --> example.c:8:13
[INFO] [stderr]   |
[INFO] [stderr] 8 |             a = b; 
[INFO] [stderr]   |             ^^^^^
[INFO] [stdout] test tests::semantic_enums::warns_on_large_enum_constant ... ok
[INFO] [stdout] test tests::semantic_enums::warns_on_underflow_large_negative ... ok
[INFO] [stderr] error: cannot take address of bit-field
[INFO] [stderr]  --> example.c:5:22
[INFO] [stderr]   |
[INFO] [stderr] 5 |             int *p = &s.x;
[INFO] [stderr]   |                      ^^^^
[INFO] [stdout] test tests::semantic_expr::test_assign_incompatible_pointers ... ok
[INFO] [stdout] test tests::semantic_expr::test_assign_incompatible_struct ... ok
[INFO] [stdout] test tests::semantic_expr::test_address_of_bitfield_prohibited ... ok
[INFO] [stderr] error: cannot take address of 'register' variable
[INFO] [stderr]  --> example.c:4:22
[INFO] [stderr]   |
[INFO] [stderr] 4 |             int *p = &x;
[INFO] [stderr]   |                      ^^
[INFO] [stderr] error: type mismatch: expected struct A, found struct B
[INFO] [stderr]  --> example.c:7:13
[INFO] [stderr]   |
[INFO] [stderr] 7 |             a = b;
[INFO] [stderr]   |             ^^^^^
[INFO] [stdout] test tests::semantic_expr::test_assign_pointer_to_bool ... ok
[INFO] [stdout] test tests::semantic_enums::test_enum_init_with_other_enum_indirect ... ok
[INFO] [stdout] test tests::semantic_enums::warns_on_overflow_next_value ... ok
[INFO] [stdout] test tests::semantic_expr::test_address_of_register_prohibited ... ok
[INFO] [stderr] error: type mismatch: expected int*, found int
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             p = 5; // Invalid (except 0)
[INFO] [stderr]   |             ^^^^^
[INFO] [stdout] test tests::semantic_expr::test_assign_struct_mismatch ... ok
[INFO] [stderr] error: type mismatch: expected int, found struct A
[INFO] [stderr]  --> example.c:6:13
[INFO] [stderr]   |
[INFO] [stderr] 6 |             i = a;
[INFO] [stderr]   |             ^^^^^
[INFO] [stderr] error: type mismatch: expected struct A, found int
[INFO] [stderr]  --> example.c:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |             a = 10;
[INFO] [stderr]   |             ^^^^^^
[INFO] [stderr] error: type mismatch: expected int, found int*
[INFO] [stderr]  --> example.c:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |             i = p; // Invalid without cast
[INFO] [stderr]   |             ^^^^^
[INFO] [stdout] test tests::semantic_expr::test_assign_int_to_enum ... ok
[INFO] [stdout] test tests::semantic_expr::test_address_of_array_member_identity ... ok
[INFO] [stdout] test tests::semantic_expr::test_assign_struct_to_int ... ok
[INFO] [stdout] test tests::semantic_expr::test_assign_int_to_pointer ... ok
[INFO] [stdout] test tests::semantic_expr::test_assign_valid_null_ptr ... ok
[INFO] [stdout] test tests::semantic_enums::test_enumerator_outside_enum ... ok
[INFO] [stdout] test tests::semantic_expr::test_assign_int_to_struct ... ok
[INFO] [stdout] test tests::semantic_expr::test_assign_pointer_to_int ... ok
[INFO] [stdout] test tests::semantic_expr::test_assign_valid_arithmetic ... ok
[INFO] [stdout] test tests::semantic_expr::test_assign_valid_void_ptr ... ok
[INFO] [stderr] error: cannot assign to read-only location
[INFO] [stderr]  --> example.c:6:13
[INFO] [stderr]   |
[INFO] [stderr] 6 |             p = 0;   // This should fail
[INFO] [stderr]   |             ^
[INFO] [stdout] test tests::semantic_expr::test_comma_operator_loop ... ok
[INFO] [stderr] error: indirection requires pointer operand ('double' invalid)
[INFO] [stderr]  --> example.c:2:39
[INFO] [stderr]   |
[INFO] [stderr] 2 |         double foo(double x) { return *x; }
[INFO] [stdout] test tests::semantic_expr::test_comma_operator ... ok
[INFO] [stdout] test tests::semantic_expr::test_comma_operator_types ... ok
[INFO] [stdout] test tests::semantic_expr::test_const_pointer_to_int ... ok
[INFO] [stdout] test tests::semantic_complex_types::test_complex_creal_cimag ... ok
[INFO] [stderr]   |                                       ^^
[INFO] [stderr] error: indirection requires pointer operand ('struct S' invalid)
[INFO] [stderr]  --> example.c:3:32
[INFO] [stderr]   |
[INFO] [stderr] 3 |         void foo(struct S s) { *s; }
[INFO] [stdout] test tests::semantic_brace_elision::test_anonymous_struct_designator_init ... ok
[INFO] [stdout] test tests::semantic_brace_elision::test_struct_brace_elision_init ... ok
[INFO] [stdout] test tests::semantic_expr::test_deref_double ... ok
[INFO] [stderr]   |                                ^^error: indirection requires pointer operand ('int' invalid)
[INFO] [stdout] test tests::semantic_expr::test_enum_arithmetic ... ok
[INFO] [stderr]  --> example.c:2:33
[INFO] [stderr]   |
[INFO] [stderr] 2 |         int foo(int x) { return *x; }
[INFO] [stderr]   |                                 ^^
[INFO] [stdout] test tests::semantic_expr::test_deref_int ... ok
[INFO] [stderr] 
[INFO] [stderr] warning: address of array 'x' will always evaluate to 'true' [-Wtautological-pointer-compare]
[INFO] [stderr]  --> example.c:4:20
[INFO] [stderr]   |
[INFO] [stderr] 4 |             return !x;
[INFO] [stderr]   |                    ^^
[INFO] [stderr] error: indirection requires pointer operand ('long' invalid)
[INFO] [stderr]  --> example.c:2:35
[INFO] [stderr]   |
[INFO] [stdout] test tests::semantic_expr::test_deref_struct ... ok
[INFO] [stderr] 2 |         long foo(long x) { return *x; }
[INFO] [stderr]   |                                   ^^
[INFO] [stderr] error: Expression is not assignable (not an lvalue)
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             &(x + 1);
[INFO] [stderr]   |             ^^^^^^^
[INFO] [stdout] test tests::semantic_expr::test_logic_not_on_array_allowed ... ok
[INFO] [stdout] test tests::semantic_expr::test_deref_long ... ok
[INFO] [stdout] test tests::semantic_expr::test_long_long_literal_suffix ... ok
[INFO] [stdout] test tests::semantic_expr::test_logic_not_on_function_allowed ... ok
[INFO] [stdout] test tests::semantic_expr::test_lvalue_addr_of_rvalue ... ok
[INFO] [stderr] error: Expression is not assignable (not an lvalue)
[INFO] [stdout] test tests::semantic_expr::test_enum_constant_assignment ... ok
[INFO] [stderr]  --> example.c:5:13
[INFO] [stdout] test tests::semantic_expr::test_lvalue_assign_struct_rvalue_member ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::semantic_expr::test_lvalue_assign_to_literal ... ok
[INFO] [stderr] 5 |             f().x = 1;
[INFO] [stdout] test tests::semantic_expr::test_lvalue_assign_to_arithmetic_expr ... ok
[INFO] [stderr]   |             ^^^^^
[INFO] [stdout] test tests::semantic_expr::test_lvalue_post_dec_rvalue ... ok
[INFO] [stderr] error: Expression is not assignable (not an lvalue)
[INFO] [stdout] test tests::semantic_expr::test_lvalue_post_inc_literal ... ok
[INFO] [stderr]  --> example.c:3:13
[INFO] [stdout] test tests::semantic_expr::test_lvalue_pre_inc_literal ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::semantic_expr::test_lvalue_pre_dec_rvalue ... ok
[INFO] [stderr] 3 |             1 = 2;
[INFO] [stdout] test tests::semantic_expr::test_nested_const_pointer ... ok
[INFO] [stderr]   |             ^
[INFO] [stdout] test tests::semantic_expr::test_nested_qualifier_preservation ... ok
[INFO] [stderr] error: Expression is not assignable (not an lvalue)
[INFO] [stdout] test tests::semantic_expr::test_pointer_signedness_mismatch ... ok
[INFO] [stderr]  --> example.c:4:14
[INFO] [stdout] test tests::semantic_expr::test_sizeof_layout_crash ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::semantic_expr::test_sizeof_logic_or_is_int_size ... ok
[INFO] [stderr] 4 |             (x + y)--;
[INFO] [stdout] test tests::semantic_expr::test_type_limits_and_token_pasting ... ok
[INFO] [stderr]   |              ^^^^^
[INFO] [stderr] error: Expression is not assignable (not an lvalue)
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             x + 1 = 5;
[INFO] [stderr]   |             ^^^^^
[INFO] [stderr] error: Expression is not assignable (not an lvalue)
[INFO] [stderr]  --> example.c:3:13
[INFO] [stderr]   |
[INFO] [stderr] 3 |             1++;
[INFO] [stderr]   |             ^
[INFO] [stderr] error: Expression is not assignable (not an lvalue)
[INFO] [stderr]  --> example.c:3:15
[INFO] [stderr]   |
[INFO] [stderr] 3 |             ++1;
[INFO] [stderr]   |               ^
[INFO] [stderr] error: Expression is not assignable (not an lvalue)
[INFO] [stderr]  --> example.c:4:16
[INFO] [stderr]   |
[INFO] [stderr] 4 |             --(x + y);
[INFO] [stderr]   |                ^^^^^
[INFO] [stderr] error: cannot assign to read-only location
[INFO] [stderr]  --> example.c:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |             *p = 20;
[INFO] [stderr]   |             ^^
[INFO] [stderr] warning: pointer targets in assignment differ in signedness (passing 'unsigned int*' to 'int*') [-Wpointer-sign]
[INFO] [stderr]  --> example.c:6:13
[INFO] [stderr]   |
[INFO] [stderr] 6 |             a = b;
[INFO] [stderr]   |             ^^^^^
[INFO] [stderr] error: cannot assign to read-only location
[INFO] [stderr]  --> example.c:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |             *p = 20; // Should fail (pointee is const)
[INFO] [stderr]   |             ^^
[INFO] [stderr] warning: pointer targets in assignment differ in signedness (passing 'int*' to 'unsigned int*') [-Wpointer-sign]
[INFO] [stderr]  --> example.c:7:17
[INFO] [stderr]   |
[INFO] [stderr] 7 |             foo(a);
[INFO] [stderr]   |                 ^
[INFO] [stderr] error: cannot assign to read-only location
[INFO] [stderr]  --> example.c:6:13
[INFO] [stderr]   |
[INFO] [stderr] 6 |             p = 0;   // Should fail (pointer is const)
[INFO] [stderr]   |             ^
[INFO] [stderr] error: expression in 'case' label is not an integer constant expression
[INFO] [stderr]  --> example.c:4:22
[INFO] [stderr]   |
[INFO] [stderr] 4 |                 case 1.0: break;
[INFO] [stderr]   |                      ^^^
[INFO] [stderr] error: type mismatch: expected int, found void
[INFO] [stderr]  --> example.c:6:13
[INFO] [stderr]   |
[INFO] [stderr] 6 |             x = foo();
[INFO] [stderr]   |             ^^^^^^^^^
[INFO] [stdout] test tests::semantic_expr::test_assign_enum_to_int ... ok
[INFO] [stdout] test tests::semantic_expr::test_usual_arithmetic_conversions_signed_wins ... ok
[INFO] [stdout] test tests::semantic_expr::test_reverse_subscript_with_pointer ... ok
[INFO] [stdout] test tests::semantic_control_flow::test_rejects_non_integer_case_label ... ok
[INFO] [stdout] test tests::semantic_expr::test_sizeof_logic_not_is_int_size ... ok
[INFO] [stdout] test tests::semantic_expr::test_sizeof_logic_and_is_int_size ... ok
[INFO] [stdout] test tests::semantic_expr::test_void_assign_variable ... ok
[INFO] [stderr] error: Invalid operands for binary operation: have 'float' and 'int'
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             f <<= 1;
[INFO] [stderr]   |             ^
[INFO] [stdout] test tests::semantic_float_and_double::test_compound_shift_left_float_lhs ... ok
[INFO] [stderr] error: type mismatch: expected int, found void
[INFO] [stderr]  --> example.c:5:21
[INFO] [stderr]   |
[INFO] [stderr] 5 |             int x = foo();
[INFO] [stderr]   |                     ^^^^^
[INFO] [stderr] error: Invalid operands for binary operation: have 'int' and 'float'
[INFO] [stdout] test tests::semantic_expr::test_void_init_variable ... ok
[INFO] [stderr]  --> example.c:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |             x <<= f;
[INFO] [stderr]   |             ^
[INFO] [stdout] test tests::semantic_float_and_double::test_compound_shift_left_float_rhs ... ok
[INFO] [stdout] test tests::semantic_expr::test_compound_mul_assign ... ok
[INFO] [stdout] test tests::semantic_expr::test_compound_sub_assign ... ok
[INFO] [stdout] test tests::semantic_expr::test_compound_mixed_types ... ok
[INFO] [stdout] test tests::semantic_expr::test_compound_mod_assign ... ok
[INFO] [stdout] test tests::semantic_expr::test_compound_div_assign ... ok
[INFO] [stdout] test tests::semantic_expr::test_compound_add_assign ... ok
[INFO] [stdout] test tests::semantic_expr::test_pointer_sub_assign ... ok
[INFO] [stdout] test tests::semantic_float_and_double::test_regression_nan_float_to_double ... ok
[INFO] [stdout] test tests::semantic_float_and_double::test_regression_int_to_double_unary_minus ... ok
[INFO] [stdout] test tests::semantic_float_and_double::test_shift_left_float_lhs ... ok
[INFO] [stderr] error: Invalid operands for binary operation: have 'float' and 'int'
[INFO] [stderr]  --> example.c:4:21
[INFO] [stderr]   |
[INFO] [stderr] 4 |             int x = f << 1;
[INFO] [stderr]   |                     ^
[INFO] [stderr] error: Invalid operands for binary operation: have 'float' and 'int'
[INFO] [stdout] test tests::semantic_float_and_double::test_regression_for_loop_init_int_to_double ... ok
[INFO] [stderr]  --> example.c:4:21
[INFO] [stdout] test tests::semantic_float_and_double::test_shift_right_float_lhs ... ok
[INFO] [stderr]   |
[INFO] [stderr] 4 |             int x = f >> 1;
[INFO] [stderr]   |                     ^
[INFO] [stderr] error: Invalid operands for binary operation: have 'int' and 'float'
[INFO] [stderr]  --> example.c:5:21
[INFO] [stderr]   |
[INFO] [stderr] 5 |             int y = x << f;
[INFO] [stderr]   |                     ^
[INFO] [stdout] test tests::semantic_float_and_double::test_shift_left_float_rhs ... ok
[INFO] [stderr] error: type mismatch: expected int, found int*
[INFO] [stderr]  --> example.c:5:23
[INFO] [stderr]   |
[INFO] [stderr] 5 |             takes_int(arr);
[INFO] [stderr]   |                       ^^^
[INFO] [stdout] test tests::semantic_functions::test_array_argument_to_int_parameter ... ok
[INFO] [stderr] error: Invalid operands for binary operation: have 'int' and 'float'
[INFO] [stderr]  --> example.c:5:21
[INFO] [stderr]   |
[INFO] [stdout] test tests::semantic_float_and_double::test_shift_right_float_rhs ... ok
[INFO] [stderr] 5 |             int y = x >> f;
[INFO] [stderr]   |                     ^
[INFO] [stdout] test tests::semantic_functions::test_array_param_qualifiers_definition_compatibility ... ok
[INFO] [stdout] test tests::semantic_functions::test_array_param_qualifiers_decay ... ok
[INFO] [stdout] test tests::semantic_functions::test_auto_at_file_scope_prohibited ... ok
[INFO] [stdout] test tests::semantic_functions::test_call_int_cast_to_fn_ptr ... ok
[INFO] [stderr] error: called object type 'int' is not a function or function pointer
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             x();
[INFO] [stdout] test tests::semantic_functions::test_conflicting_function_decl ... ok
[INFO] [stderr]   |             ^
[INFO] [stdout] test tests::semantic_functions::test_call_non_function ... ok
[INFO] [stdout] test tests::semantic_functions::test_auto_register_on_function_prohibited ... ok
[INFO] [stdout] test tests::semantic_functions::test_conflicting_types_basic ... ok
[INFO] [stdout] test tests::semantic_functions::test_func_identifier_basic ... ok
[INFO] [stdout] test tests::semantic_functions::test_func_identifier_in_main ... ok
[INFO] [stderr] error: Unexpected token: expected Expected declarator or identifier after type specifier, found __func__
[INFO] [stderr]  --> example.c:3:17
[INFO] [stderr]   |
[INFO] [stderr] 3 |             int __func__;
[INFO] [stderr]   |                 ^^^^^^^^
[INFO] [stdout] test tests::semantic_functions::test_func_identifier_type ... ok
[INFO] [stdout] test tests::semantic_float_and_double::test_float_to_int_cast_literal_precision ... ok
[INFO] [stdout] test tests::semantic_functions::test_func_identifier_redefinition ... ok
[INFO] [stdout] test tests::semantic_functions::test_func_identifier_nested_scope ... ok
[INFO] [stdout] test tests::semantic_functions::test_func_opt_unused ... ok
[INFO] [stderr] error: Unexpected token: expected Expected declarator or identifier after type specifier, found __FUNCTION__
[INFO] [stderr]  --> example.c:3:17
[INFO] [stderr]   |
[INFO] [stderr] 3 |             int __FUNCTION__;
[INFO] [stderr]   |                 ^^^^^^^^^^^^
[INFO] [stdout] test tests::semantic_functions::test_function_identifier_redefinition ... ok
[INFO] [stdout] test tests::semantic_functions::test_function_identifier_basic ... ok
[INFO] [stderr] warning: incompatible pointer types passing 'struct A*' to parameter of type 'struct TWO_INTS*' [-Wincompatible-pointer-types]
[INFO] [stderr]   --> example.c:10:33
[INFO] [stdout] test tests::semantic_float_and_double::test_float_to_int_cast_precision ... ok
[INFO] [stderr]    |
[INFO] [stdout] test tests::semantic_float_and_double::test_double_init_with_int ... ok
[INFO] [stderr] 10 |             return add_two_ints(&b);
[INFO] [stdout] test tests::semantic_functions::test_func_opt_used ... ok
[INFO] [stderr]    |                                 ^^
[INFO] [stderr] error: Unexpected token: expected ';' after declaration, found __func__
[INFO] [stderr]  --> example.c:4:25
[INFO] [stderr]   |
[INFO] [stderr] 4 |             const char* __func__ = "local";
[INFO] [stdout] test tests::semantic_functions::test_incompatible_struct_pointer_argument ... ok
[INFO] [stderr]   |                         ^^^^^^^^
[INFO] [stdout] test tests::semantic_functions::test_noreturn_declaration_mismatch ... ok
[INFO] [stdout] test tests::semantic_functions::test_func_opt_shadowed ... ok
[INFO] [stdout] test tests::semantic_float_and_double::test_float_init_with_bool ... ok
[INFO] [stderr] error: function 'foo' declared '_Noreturn' can fall off the end
[INFO] [stderr]  --> example.c:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | /     _Noreturn void foo() {
[INFO] [stderr] 3 | |     }
[INFO] [stderr]   | |_____^
[INFO] [stderr] error: function has incomplete return type
[INFO] [stderr]  --> example.c:3:9
[INFO] [stderr]   |
[INFO] [stderr] 3 |         struct S foo() {}
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::semantic_functions::test_noreturn_function_can_fall_through ... ok
[INFO] [stderr] error: function 'foo' declared '_Noreturn' can fall off the end
[INFO] [stderr]  --> example.c:2:5
[INFO] [stderr]   |
[INFO] [stdout] test tests::semantic_functions::test_incomplete_return_type ... ok
[INFO] [stderr] 2 | /     _Noreturn void foo() {
[INFO] [stderr] 3 | |         while (1) {
[INFO] [stderr] 4 | |             if (1) {
[INFO] [stderr] 5 | |             } else {
[INFO] [stderr]   | |_____________________^
[INFO] [stdout] test tests::semantic_functions::test_noreturn_function_contains_break_in_if ... ok
[INFO] [stdout] test tests::semantic_float_and_double::test_float_init_with_int ... ok
[INFO] [stderr] error: cannot take address of 'register' variable
[INFO] [stderr]  --> example.c:3:22
[INFO] [stderr]   |
[INFO] [stderr] 3 |             int *p = &x;
[INFO] [stdout] test tests::semantic_functions::test_parameter_register_allowed ... ok
[INFO] [stderr]   |                      ^^
[INFO] [stdout] test tests::semantic_functions::test_parameter_register_address_prohibited ... ok
[INFO] [stderr] error: function 'foo' declared '_Noreturn' can fall off the end
[INFO] [stderr]  --> example.c:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | /     _Noreturn void foo() {
[INFO] [stderr] 3 | |         while (1) {
[INFO] [stderr] 4 | |             L: break;
[INFO] [stderr] 5 | |         }
[INFO] [stdout] test tests::semantic_functions::test_noreturn_function_contains_break_in_label ... ok
[INFO] [stderr]   | |__________^
[INFO] [stderr] error: function 'foo' declared '_Noreturn' contains a return statement
[INFO] [stderr]  --> example.c:3:13
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return;
[INFO] [stderr]   |             ^^^^^^^
[INFO] [stdout] test tests::semantic_functions::test_noreturn_function_returns_error ... ok
[INFO] [stderr] error: function 'foo' declared '_Noreturn' contains a return statement
[INFO] [stderr]  --> example.c:3:9
[INFO] [stderr]   |
[INFO] [stderr] 3 |         return 1;
[INFO] [stderr]   |         ^^^^^^^^^
[INFO] [stdout] test tests::semantic_functions::test_noreturn_function_returns ... ok
[INFO] [stdout] test tests::semantic_functions::test_nested_array_qualifiers ... ok
[INFO] [stdout] test tests::semantic_functions::test_parameter_noreturn_prohibited ... ok
[INFO] [stdout] test tests::semantic_functions::test_parameter_inline_prohibited ... ok
[INFO] [stdout] test tests::semantic_functions::test_parameter_storage_thread_local_prohibited ... ok
[INFO] [stdout] test tests::semantic_functions::test_parameter_storage_extern_prohibited ... ok
[INFO] [stdout] test tests::semantic_expr::test_compound_unsigned_mixed_types ... ok
[INFO] [stdout] test tests::semantic_functions::test_parameter_storage_auto_prohibited ... ok
[INFO] [stdout] test tests::semantic_functions::test_parameter_storage_typedef_prohibited ... ok
[INFO] [stdout] test tests::semantic_functions::test_parameter_storage_static_prohibited ... ok
[INFO] [stdout] test tests::semantic_functions::test_pretty_function_identifier ... ok
[INFO] [stdout] test tests::semantic_float_and_double::test_char_init_with_float_overflow ... ok
[INFO] [stdout] test tests::semantic_functions::test_typedef_inline_prohibited ... ok
[INFO] [stdout] test tests::semantic_functions::test_typedef_noreturn_prohibited ... ok
[INFO] [stderr] error: Unexpected token: expected Expected declarator or identifier after type specifier, found __PRETTY_FUNCTION__
[INFO] [stderr]  --> example.c:3:17
[INFO] [stderr]   |
[INFO] [stdout] test tests::semantic_functions::test_pretty_function_identifier_redefinition ... ok
[INFO] [stderr] 3 |             int __PRETTY_FUNCTION__;
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::semantic_functions::test_struct_member_noreturn_prohibited ... ok
[INFO] [stdout] test tests::semantic_functions::test_tag_decl_inline_prohibited ... ok
[INFO] [stdout] test tests::semantic_expr::test_pointer_add_assign ... ok
[INFO] [stderr] error: type mismatch: expected int, found int*
[INFO] [stderr]  --> example.c:5:23
[INFO] [stderr]   |
[INFO] [stderr] 5 |             takes_int(ptr);
[INFO] [stderr]   |                       ^^^
[INFO] [stderr] error: void function 'foo' should not return a value
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return 1;
[INFO] [stderr]   |                    ^
[INFO] [stderr] error: type mismatch: expected void, found int
[INFO] [stderr]  --> example.c:3:13
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return 1;
[INFO] [stderr]   |             ^^^^^^^^^
[INFO] [stderr] error: Invalid application of 'sizeof' to a function type
[INFO] [stderr]  --> example.c:4:21
[INFO] [stderr]   |
[INFO] [stderr] 4 |             int x = sizeof(foo);
[INFO] [stderr]   |                     ^^^^^^^^^^
[INFO] [stdout] test tests::semantic_functions::test_pointer_argument_to_int_parameter ... ok
[INFO] [stdout] test tests::semantic_functions::test_variable_inline_prohibited ... ok
[INFO] [stdout] test tests::semantic_functions::test_sizeof_function_type ... ok
[INFO] [stdout] test tests::semantic_generic::test_complex_long_double ... ok
[INFO] [stdout] test tests::semantic_functions::test_void_function_return_value ... ok
[INFO] [stdout] test tests::semantic_generic::test_complex_generic ... ok
[INFO] [stderr] error: type mismatch: expected int, found struct S
[INFO] [stderr]  --> example.c:6:23
[INFO] [stderr]   |
[INFO] [stderr] 6 |             takes_int(s);
[INFO] [stderr]   |                       ^
[INFO] [stdout] test tests::semantic_functions::test_struct_argument_to_int_parameter ... ok
[INFO] [stdout] test tests::semantic_functions::test_tag_decl_noreturn_prohibited ... ok
[INFO] [stdout] test tests::semantic_generic::test_generic_allows_array_decay ... ok
[INFO] [stdout] test tests::semantic_generic::test_generic_function_as_control ... ok
[INFO] [stdout] test tests::semantic_generic::test_generic_allows_function_decay_via_pointer ... ok
[INFO] [stderr] error: controlling expression type 'struct A' is an incomplete type
[INFO] [stderr]  --> example.c:4:22
[INFO] [stderr]   |
[INFO] [stderr] 4 |             _Generic(*p, default: 1);
[INFO] [stderr]   |                      ^^
[INFO] [stderr] error: generic association specifies incomplete type 'void'
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic(0, void: 1, default: 0);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: generic association specifies incomplete type 'struct Incomplete'
[INFO] [stderr]  --> example.c:4:20
[INFO] [stderr]   |
[INFO] [stderr] 4 |             return _Generic(0, struct Incomplete: 1, default: 0);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::semantic_functions::test_variable_noreturn_prohibited ... ok
[INFO] [stdout] test tests::semantic_functions::test_undeclared_function ... ok
[INFO] [stderr] error: controlling expression type 'int*' not compatible with any generic association
[INFO] [stderr]  --> example.c:4:20
[INFO] [stderr]   |
[INFO] [stderr] 4 |             return _Generic(t, T: 1);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::semantic_generic::test_generic_controlling_expression_incomplete_struct ... ok
[INFO] [stdout] test tests::semantic_generic::test_complex_order ... ok
[INFO] [stdout] test tests::semantic_generic::test_generic_controlling_expression_allows_void ... ok
[INFO] [stdout] test tests::semantic_generic::test_generic_association_void_is_incomplete ... ok
[INFO] [stdout] test tests::semantic_generic::test_generic_incomplete_array_as_control ... ok
[INFO] [stdout] test tests::semantic_generic::test_generic_association_must_be_complete ... ok
[INFO] [stdout] test tests::semantic_generic::test_generic_qualifiers_and_composite_types ... ok
[INFO] [stdout] test tests::semantic_generic::test_generic_qualifiers_distinct ... ok
[INFO] [stdout] test tests::semantic_generic::test_generic_decay_and_qualifier_stripping ... ok
[INFO] [stdout] test tests::semantic_functions::test_struct_member_inline_prohibited ... ok
[INFO] [stdout] test tests::semantic_generic::test_generic_selection_pointer_to_const_vs_const_pointer ... ok
[INFO] [stdout] test tests::semantic_generic::test_generic_selection_lvalue ... ok
[INFO] [stdout] test tests::semantic_generic::test_generic_selection_correct_type_is_chosen ... ok
[INFO] [stderr] error: type 'int' in generic association compatible with previously specified type 'int'
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic(1.0f, int: 0, int: 1, default: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::semantic_generic::test_generic_selection_lvalue_struct ... ok
[INFO] [stdout] test tests::semantic_generic::test_generic_selection_with_user_defined_type ... ok
[INFO] [stdout] test tests::semantic_generic::test_generic_selection_strips_qualifiers_and_handles_default_correctly ... ok
[INFO] [stderr] error: controlling expression type 'float' not compatible with any generic association
[INFO] [stderr]  --> example.c:4:9
[INFO] [stdout] test tests::semantic_generic::test_generic_selection_no_match ... ok
[INFO] [stderr]   |
[INFO] [stderr] 4 |         _Generic(f, int: 1, long: 2);
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: generic association specifies function type 'void(int)'
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic(0, void(int): 1, default: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: type 'int' in generic association compatible with previously specified type 'int'
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic(0, int: 0, int: 1);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] note: previous association is here
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic(0, int: 0, int: 1);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: controlling expression in '_Generic' selector matches multiple associations
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic(0, int: 0, int: 1);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] note: other match is here
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic(0, int: 0, int: 1);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::semantic_generic::test_generic_selection_rejects_function_type_association ... ok
[INFO] [stderr] note: previous association is here
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic(1.0f, int: 0, int: 1, default: 2);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::semantic_generic::test_generic_pointer_qualifiers_distinct ... ok
[INFO] [stderr] error: generic association specifies variably modified type 'int[*]'
[INFO] [stderr]  --> example.c:3:13
[INFO] [stderr]   |
[INFO] [stderr] 3 |             _Generic(0, int[n]: 1);
[INFO] [stdout] test tests::semantic_generic::test_generic_string_literal_decay ... ok
[INFO] [stdout] test tests::semantic_gnu_attributes::test_attribute_aligned_struct ... ok
[INFO] [stdout] test tests::semantic_generic::test_generic_selection_rejects_duplicate_types ... ok
[INFO] [stdout] test tests::semantic_generic::test_generic_selection_rejects_multiple_matches_even_if_controlling_is_different ... ok
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: controlling expression type 'int' not compatible with any generic association
[INFO] [stderr]  --> example.c:3:13
[INFO] [stderr]   |
[INFO] [stderr] 3 |             _Generic(0, int[n]: 1);
[INFO] [stdout] test tests::semantic_gnu_attributes::test_attribute_aligned_variable ... ok
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: switch jumps into scope of identifier with variably modified type
[INFO] [stderr]  --> example.c:8:21
[INFO] [stderr]   |
[INFO] [stderr] 8 |                     return 0;
[INFO] [stderr]   |                     ^^^^^^^^^
[INFO] [stderr] note: switch starts here
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 | /             switch(n) {
[INFO] [stderr] 5 | |                 case 1:;
[INFO] [stderr] 6 | |                     int a[n];
[INFO] [stderr] 7 | |                 case 2:
[INFO] [stderr]   | |________________________^
[INFO] [stderr] note: 'a' declared here
[INFO] [stderr]  --> example.c:6:21
[INFO] [stderr]   |
[INFO] [stderr] 6 |                     int a[n];
[INFO] [stderr]   |                     ^^^^^^^^^
[INFO] [stderr] error: jump into scope of identifier with variably modified type
[INFO] [stderr]  --> example.c:4:13
[INFO] [stdout] test tests::semantic_gnu_attributes::test_attribute_packed_member ... ok
[INFO] [stderr]   |
[INFO] [stderr] 4 |             goto target;
[INFO] [stderr]   |             ^^^^^^^^^^^^
[INFO] [stdout] test tests::semantic_generic::test_generic_vla_association ... ok
[INFO] [stdout] test tests::semantic_goto_vla::test_switch_jump_into_vla_scope ... ok
[INFO] [stdout] test tests::semantic_gnu_attributes::test_attribute_packed_struct ... ok
[INFO] [stderr] note: label 'target' defined here
[INFO] [stderr]  --> example.c:6:9
[INFO] [stderr]   |
[INFO] [stderr] 6 | /         target:
[INFO] [stderr] 7 | |             return 0;
[INFO] [stderr]   | |_____________________^
[INFO] [stderr] note: 'a' declared here
[INFO] [stderr]  --> example.c:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |             int a[n];
[INFO] [stderr]   |             ^^^^^^^^^
[INFO] [stdout] test tests::semantic_gnu_attributes::test_attribute_underscore_variants ... ok
[INFO] [stdout] test tests::semantic_gnu_attributes::test_attribute_multiple ... ok
[INFO] [stdout] test tests::semantic_goto_vla::test_goto_jump_into_vla_scope ... ok
[INFO] [stdout] test tests::semantic_init::test_array_designator_simple ... ok
[INFO] [stdout] test tests::semantic_float_and_double::test_fp_const_eval ... ok
[INFO] [stdout] test tests::semantic_goto_vla::test_goto_valid_jump_vla_scope ... ok
[INFO] [stdout] test tests::semantic_init::test_array_designator_override ... ok
[INFO] [stderr] error: duplicate default association in generic selection
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic(0, default: 0, default: 1);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] note: previous default association is here
[INFO] [stderr]  --> example.c:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 |             return _Generic(0, default: 0, default: 1);
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::semantic_generic::test_generic_selection_rejects_multiple_defaults ... ok
[INFO] [stdout] test tests::semantic_init::test_brace_elision_designator_break ... ok
[INFO] [stderr] error: Unexpected token: expected declaration specifiers, found NotARealType
[INFO] [stderr]  --> example.c:5:29
[INFO] [stderr]   |
[INFO] [stderr] 5 |         _Generic(x, int: 1, NotARealType: 2, default: 3);
[INFO] [stdout] test tests::semantic_init::test_array_designator_out_of_order ... ok
[INFO] [stdout] test tests::semantic_generic::test_generic_selection_pointer_qualifiers ... ok
[INFO] [stdout] test tests::semantic_init::test_array_init_bug_mir ... ok
[INFO] [stderr]   |                             ^^^^^^^^^^^^
[INFO] [stdout] test tests::semantic_init::test_local_array_designator_out_of_order ... ok
[INFO] [stdout] test tests::semantic_init::test_fam_initialization ... ok
[INFO] [stdout] test tests::semantic_float_and_double::test_float_init_with_int_neg ... ok
[INFO] [stdout] test tests::semantic_generic::test_generic_selection_invalid_type_name ... ok
[INFO] [stdout] test tests::semantic_init::test_initializer_list_crash_regression ... ok
[INFO] [stdout] test tests::semantic_init::test_local_struct_designator_simple ... ok
[INFO] [stdout] test tests::semantic_init::test_local_nested_array_init_with_designators ... ok
[INFO] [stdout] test tests::semantic_init::test_mixed_array_struct_designators ... ok
[INFO] [stdout] test tests::semantic_init::test_local_partial_init_implicit_zero ... ok
[INFO] [stdout] test tests::semantic_init::test_local_mixed_array_struct_designators ... ok
[INFO] [stdout] test tests::semantic_init::test_local_array_designator_simple ... ok
[INFO] [stdout] test tests::semantic_init::test_local_nested_array_init ... ok
[INFO] [stdout] test tests::semantic_init::test_multidim_array_string_init_designator ... ok
[INFO] [stdout] test tests::semantic_init::test_nested_struct_designator ... ok
[INFO] [stdout] test tests::semantic_init::test_nested_union_init_mir ... ok
[INFO] [stdout] test tests::semantic_init::test_range_designators ... ok
[INFO] [stdout] test tests::semantic_init::test_scalar_to_aggregate_elision ... ok
[INFO] [stdout] test tests::semantic_init::test_struct_designator_simple ... ok
[INFO] [stdout] test tests::semantic_init::test_struct_array_brace_elision ... ok
[INFO] [stdout] test tests::semantic_init::test_transparent_union_mir ... ok
[INFO] [stdout] test tests::semantic_init::test_typeof_compat_array_size ... ok
[INFO] [stdout] test tests::semantic_init::test_array_init_bug ... ok
[INFO] [stdout] test tests::semantic_float_and_double::test_nan_bool_conversion ... ok
[INFO] [stdout] test tests::semantic_expr::test_pointer_arithmetic_correctness ... ok
[INFO] [stdout] test tests::semantic_float_and_double::test_int_init_with_float ... ok
[INFO] [stdout] test tests::semantic_init::test_union_init_mir ... ok
[INFO] [stdout] test tests::semantic_init::test_scalar_braced_init ... ok
[INFO] [stdout] test tests::semantic_integer_literals::test_decimal_literal_long ... ok
[INFO] [stdout] test tests::semantic_integer_literals::test_hex_literal_int ... ok
[INFO] [stdout] test tests::semantic_integer_literals::test_decimal_suffixless_too_large_for_long_long ... ok
[INFO] [stdout] test tests::semantic_integer_literals::test_hex_literal_unsigned_int ... ok
[INFO] [stdout] test tests::semantic_integer_literals::test_decimal_literal_int ... ok
[INFO] [stdout] test tests::semantic_integer_literals::test_hex_suffixless_unsigned_long ... ok
[INFO] [stdout] test tests::semantic_integer_literals::test_hex_suffixless_unsigned_long_long ... ok
[INFO] [stdout] test tests::semantic_integer_literals::test_hex_suffixed_literals ... ok
[INFO] [stdout] test tests::semantic_integer_literals::test_l_suffix_hex ... ok
[INFO] [stdout] test tests::semantic_init::test_struct_designator_subobject_completion ... ok
[INFO] [stdout] test tests::semantic_integer_literals::test_l_suffix_decimal_long_long ... ok
[INFO] [stdout] test tests::semantic_integer_literals::test_octal_literals ... ok
[INFO] [stdout] test tests::semantic_integer_literals::test_u_suffix_too_large_for_unsigned_int ... ok
[INFO] [stdout] test tests::semantic_long_double::test_long_double_arithmetic_conversion ... ok
[INFO] [stdout] test tests::semantic_long_double::test_long_double_characteristic_macros ... ok
[INFO] [stdout] test tests::semantic_integer_literals::test_suffixed_literals ... ok
[INFO] [stdout] test tests::semantic_integer_literals::test_long_long_cases ... ok
[INFO] [stderr] warning: use of GNU designated initializer range extension [-Wgnu-designated-init]
[INFO] [stderr]  --> test.c:3:38
[INFO] [stderr]   |
[INFO] [stderr] 3 |             int i[1][3] = {[0][0 ... 1] = 4, 2};
[INFO] [stderr]   |                                      ^
[INFO] [stdout] test tests::semantic_init::test_array_designator_subobject_completion ... ok
[INFO] [stdout] test tests::semantic_long_double::test_long_double_size_align ... ok
[INFO] [stdout] test tests::semantic_lowering::test_const_pointer_init ... ok
[INFO] [stdout] test tests::semantic_lowering::test_alignment_specifier ... ok
[INFO] [stdout] test tests::semantic_lowering::test_enum_decl_members_populated ... ok
[INFO] [stdout] test tests::semantic_long_double::test_long_double_assignment_lowering ... ok
[INFO] [stdout] test tests::semantic_lowering::test_record_decl_members_populated ... ok
[INFO] [stdout] test tests::semantic_mir::test_anonymous_struct_union_field_indices ... ok
[INFO] [stdout] test tests::semantic_lowering::test_function_call_args_contiguity ... ok
[INFO] [stdout] test tests::semantic_lowering::test_struct_member_qualifiers_preserved ... ok
[INFO] [stdout] test tests::semantic_mir::test_basic_typedef ... ok
[INFO] [stdout] test tests::semantic_mir::test_array_to_pointer_decay_in_function_call ... ok
[INFO] [stdout] test tests::semantic_mir::test_const_global_mir ... ok
[INFO] [stdout] test tests::semantic_mir::test_deref_after_cast ... ok
[INFO] [stdout] test tests::semantic_mir::test_designated_initializer_global ... ok
[INFO] [stdout] test tests::semantic_mir::test_consecutive_labels ... ok
[INFO] [stdout] test tests::semantic_mir::test_array_to_pointer_decay_in_variadic_function_call ... ok
[INFO] [stdout] test tests::semantic_mir::test_duplicate_global_declaration_with_initializers_diagnostic ... ok
[INFO] [stdout] test tests::semantic_mir::test_function_pointer_in_struct ... ok
[INFO] [stdout] test tests::semantic_mir::test_for_stmt ... ok
[INFO] [stdout] test tests::semantic_mir::test_external_function_call ... ok
[INFO] [stdout] test tests::semantic_mir::test_global_initializer_with_address ... ok
[INFO] [stdout] test tests::semantic_mir::test_global_initializer_with_cast ... ok
[INFO] [stdout] test tests::semantic_mir::test_function_with_many_return_types ... ok
[INFO] [stdout] test tests::semantic_init::test_string_literal_array_init ... ok
[INFO] [stdout] test tests::semantic_init::test_designated_initializer_struct_from_ptr ... ok
[INFO] [stdout] test tests::semantic_mir::test_global_variable ... ok
[INFO] [stdout] test tests::semantic_mir::test_if_else_statement ... ok
[INFO] [stdout] test tests::semantic_mir::test_gnu_statement_expression_labels_and_void ... ok
[INFO] [stdout] test tests::semantic_mir::test_increment_decrement ... ok
[INFO] [stdout] test tests::semantic_init::test_string_literal_concatenated_init ... ok
[INFO] [stdout] test tests::semantic_init::test_global_array_init_ptr ... ok
[INFO] [stdout] test tests::semantic_init::test_compound_literal_array_deduction ... ok
[INFO] [stdout] test tests::semantic_init::test_fam_brace_elision_initialization ... ok
[INFO] [stdout] test tests::semantic_init::test_u8_string_init ... ok
[INFO] [stdout] test tests::semantic_init::test_wide_string_init ... ok
[INFO] [stdout] test tests::semantic_init::test_union_init_with_different_types ... ok
[INFO] [stdout] test tests::semantic_init::test_braced_wide_string_init ... ok
[INFO] [stdout] test tests::semantic_mir::test_duplicate_global_declaration ... ok
[INFO] [stdout] test tests::semantic_mir::test_long_long_comparison_crash ... ok
[INFO] [stdout] test tests::semantic_mir::test_mir_generation_for_self_referential_struct ... ok
[INFO] [stdout] test tests::semantic_mir::test_mir_generation_for_self_referential_union ... ok
[INFO] [stderr] error: cannot assign to read-only location
[INFO] [stderr]  --> example.c:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |             y = x;
[INFO] [stderr]   |             ^
[INFO] [stdout] test tests::semantic_negative::test_assignment_to_const ... ok
[INFO] [stderr] error: Expression is not assignable (not an lvalue)
[INFO] [stderr]  --> example.c:3:22
[INFO] [stderr]   |
[INFO] [stderr] 3 |             int *p = &(1 + 2);
[INFO] [stderr]   |                      ^^^^^^^
[INFO] [stdout] test tests::semantic_mir::test_variable_shadowing ... ok
[INFO] [stdout] test tests::semantic_mir::test_while_statement ... ok
[INFO] [stdout] test tests::semantic_negative::test_addrof_rvalue ... ok
[INFO] [stdout] test tests::semantic_negative::test_extern_followed_by_static_function_mismatch ... ok
[INFO] [stderr] error: no member named 'y' in 'struct A'
[INFO] [stderr]  --> example.c:4:26
[INFO] [stderr]   |
[INFO] [stderr] 4 |             struct A a = {.y = 1};
[INFO] [stdout] test tests::semantic_negative::test_extern_followed_by_static_variable_mismatch ... ok
[INFO] [stderr]   |                          ^^^^^^^^error: incomplete type 'struct A'
[INFO] [stderr]  --> example.c:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |             p->x = 1;
[INFO] [stderr]   |             ^^^^
[INFO] [stderr] 
[INFO] [stderr] error: invalid initializer
[INFO] [stderr]  --> example.c:3:13
[INFO] [stderr]   |
[INFO] [stderr] 3 |             extern int x = 10;
[INFO] [stdout] test tests::semantic_negative::test_deref_incomplete_type ... ok
[INFO] [stdout] test tests::semantic_negative::test_designated_init_field_not_found ... ok
[INFO] [stdout] test tests::semantic_mir::test_global_after_function ... ok
[INFO] [stdout] test tests::semantic_mir::test_incomplete_record_type ... ok
[INFO] [stdout] test tests::semantic_mir::test_parameter_shadowing ... ok
[INFO] [stdout] test tests::semantic_mir::test_simple_variable_return ... ok
[INFO] [stdout] test tests::semantic_mir::test_simple_goto ... ok
[INFO] [stdout] test tests::semantic_mir::test_struct_type_regression ... ok
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: cannot assign to read-only location
[INFO] [stderr]  --> example.c:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |             *p = 2;
[INFO] [stderr]   |             ^^
[INFO] [stdout] test tests::semantic_mir::test_nested_compound_initializer_global ... ok
[INFO] [stdout] test tests::semantic_mir::test_string_literal_decay ... ok
[INFO] [stdout] test tests::semantic_negative::test_extern_init_block_scope ... ok
[INFO] [stdout] test tests::semantic_negative::test_assignment_to_deref_const_ptr ... ok
[INFO] [stderr] error: type mismatch: expected int, found void
[INFO] [stderr]  --> example.c:4:21
[INFO] [stderr]   |
[INFO] [stderr] 4 |             int x = foo();
[INFO] [stderr]   |                     ^^^^^
[INFO] [stderr] error: type mismatch: expected scalar type, found struct S
[INFO] [stderr]  --> example.c:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 |             return !s;
[INFO] [stderr]   |                    ^^
[INFO] [stdout] test tests::semantic_negative::test_invalid_restrict ... ok
[INFO] [stderr] warning: assignment discards qualifiers from pointer target type (passing 'const int*' to 'int*') [-Wincompatible-pointer-types-discards-qualifiers]
[INFO] [stdout] test tests::semantic_negative::test_global_variable_redefinition ... ok
[INFO] [stderr]  --> example.c:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |             p = cp;
[INFO] [stderr]   |             ^^^^^^
[INFO] [stderr] warning: comparison of incompatible pointer types 'int*' and 'double*' [-Wpointer-compare]
[INFO] [stderr]  --> example.c:7:17
[INFO] [stderr]   |
[INFO] [stderr] 7 |             if (p == q) {}
[INFO] [stderr]   |                 ^
[INFO] [stderr] error: cannot assign to read-only location
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             x++;
[INFO] [stderr]   |             ^
[INFO] [stderr] error: type mismatch: expected scalar type, found union U
[INFO] [stderr]  --> example.c:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 |             return !u;
[INFO] [stderr]   |                    ^^
[INFO] [stdout] test tests::semantic_negative::test_invalid_use_of_void_in_expr ... ok
[INFO] [stdout] test tests::semantic_negative::test_logic_not_on_struct_prohibited ... ok
[INFO] [stdout] test tests::semantic_negative::test_multiple_storage_class_specifiers ... ok
[INFO] [stdout] test tests::semantic_negative::test_global_tentative_incomplete_type_prohibited ... ok
[INFO] [stdout] test tests::semantic_negative::test_function_parameter_incomplete_type_prohibited ... ok
[INFO] [stdout] test tests::semantic_negative::test_plain_followed_by_static_variable_mismatch ... ok
[INFO] [stdout] test tests::semantic_negative::test_pointer_assignment_discards_const_warning ... ok
[INFO] [stdout] test tests::semantic_negative::test_no_linkage_incomplete_type_prohibited ... ok
[INFO] [stdout] test tests::semantic_negative::test_pointer_comparison_incompatible ... ok
[INFO] [stdout] test tests::semantic_negative::test_increment_const ... ok
[INFO] [stdout] test tests::semantic_mir::test_struct_tag_shadowing ... ok
[INFO] [stderr] error: Invalid operands for binary operation: have 'int*' and 'float*'
[INFO] [stderr]  --> example.c:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 |             return p1 - p2;
[INFO] [stderr]   |                    ^^
[INFO] [stderr] warning: excess elements in scalar initializer [-Wexcess-initializers]
[INFO] [stderr]  --> example.c:3:21
[INFO] [stderr]   |
[INFO] [stderr] 3 |             int x = {1, 2};
[INFO] [stderr]   |                     ^^^^^^error: Invalid application of 'sizeof' to an incomplete type 'struct S'
[INFO] [stderr]  --> example.c:4:21
[INFO] [stderr]   |
[INFO] [stderr] 4 |             int x = sizeof(struct S);
[INFO] [stderr]   |                     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: function 'die' declared '_Noreturn' can fall off the end
[INFO] [stderr]  --> example.c:3:9
[INFO] [stderr]   |
[INFO] [stderr] 3 | /         _Noreturn void die(void) {
[INFO] [stderr] 4 | |             regular();
[INFO] [stderr] 5 | |         }
[INFO] [stderr]   | |_________^
[INFO] [stderr] error: Invalid operands for binary operation: have 'struct A*' and 'struct A*'
[INFO] [stderr]  --> example.c:6:20
[INFO] [stderr]   |
[INFO] [stderr] 6 |             return p1 - p2;
[INFO] [stdout] test tests::semantic_negative::test_logic_not_on_union_prohibited ... ok
[INFO] [stderr]   |                    ^^
[INFO] [stderr] error: function 'die' declared '_Noreturn' can fall off the end
[INFO] [stdout] test tests::semantic_negative::test_restrict_on_non_pointer_prohibited ... ok
[INFO] [stderr]  --> example.c:2:9
[INFO] [stderr]   |
[INFO] [stderr] 2 |         _Noreturn void die(void) {}
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::semantic_mir::test_ternary_with_mixed_pointer_integer ... ok
[INFO] [stdout] test tests::semantic_negative::test_pointer_sub_incompatible ... ok
[INFO] [stdout] test tests::semantic_negative::test_restrict_on_function_pointer_prohibited ... ok
[INFO] [stderr] error: function 'die' declared '_Noreturn' can fall off the end
[INFO] [stderr]  --> example.c:3:9
[INFO] [stderr]   |
[INFO] [stderr] 3 | /         _Noreturn void die(int c) {
[INFO] [stderr] 4 | |             if (c) {
[INFO] [stderr] 5 | |                 abort();
[INFO] [stderr] 6 | |             }
[INFO] [stdout] test tests::semantic_negative::test_sizeof_incomplete_struct ... ok
[INFO] [stdout] test tests::semantic_negative::test_scalar_init_brace_list ... ok
[INFO] [stdout] test tests::semantic_noreturn::test_noreturn_calling_regular ... ok
[INFO] [stdout] test tests::semantic_negative::test_pointer_sub_incomplete ... ok
[INFO] [stdout] test tests::semantic_long_double::test_long_double_nan_execution ... ok
[INFO] [stdout] test tests::semantic_negative::test_static_tentative_incomplete_type_allowed ... ok
[INFO] [stdout] test tests::semantic_negative::test_variable_of_void_type ... ok
[INFO] [stdout] test tests::semantic_noreturn::test_noreturn_empty_body ... ok
[INFO] [stdout] test tests::semantic_negative::test_static_tentative_incomplete_type_prohibited ... ok
[INFO] [stdout] test tests::semantic_noreturn::test_noreturn_calling_noreturn ... ok
[INFO] [stdout] test tests::semantic_noreturn::test_noreturn_if_else_both_noreturn ... ok
[INFO] [stdout] test tests::semantic_noreturn::test_noreturn_infinite_goto ... ok
[INFO] [stdout] test tests::semantic_noreturn::test_noreturn_for_infinite ... ok
[INFO] [stderr]   | |______________^
[INFO] [stderr] error: Invalid operands for binary operation: have 'void*' and 'int'
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             p - 1;
[INFO] [stderr]   |             ^
[INFO] [stdout] test tests::semantic_noreturn::test_noreturn_if_only ... ok
[INFO] [stdout] test tests::semantic_nullptr::test_c23_nullptr_comparison ... ok
[INFO] [stdout] test tests::semantic_negative::test_void_pointer_sub_int ... ok
[INFO] [stdout] test tests::semantic_parsed_declarator_coverage::test_array_qualifier_valid ... ok
[INFO] [stdout] test tests::semantic_parsed_declarator_coverage::test_array_qualifier_not_outermost ... ok
[INFO] [stdout] test tests::semantic_parsed_declarator_coverage::test_array_static_not_outermost ... ok
[INFO] [stdout] test tests::semantic_parsed_declarator_coverage::test_array_static_outside_parameter ... ok
[INFO] [stderr] error: member reference base type 'int' is not a structure or union
[INFO] [stderr]  --> example.c:6:44
[INFO] [stderr]   |
[INFO] [stderr] 6 |             __builtin_offsetof(struct S, a.b);
[INFO] [stderr]   |                                            ^
[INFO] [stderr] error: no member named 'b' in 'struct S'
[INFO] [stderr]  --> example.c:6:42
[INFO] [stderr]   |
[INFO] [stderr] 6 |             __builtin_offsetof(struct S, b);
[INFO] [stderr]   |                                          ^
[INFO] [stderr] error: subscripted value is not an array (have 'int')
[INFO] [stderr]  --> example.c:6:45
[INFO] [stderr]   |
[INFO] [stderr] 6 |             __builtin_offsetof(struct S, a[0]);
[INFO] [stderr]   |                                             ^
[INFO] [stdout] test tests::semantic_parsed_declarator_coverage::test_array_static_valid ... ok
[INFO] [stderr] error: Initializer element is not a compile-time constant
[INFO] [stderr]  --> example.c:7:44
[INFO] [stderr]   |
[INFO] [stderr] 7 |             __builtin_offsetof(struct S, a[var]);
[INFO] [stderr]   |                                            ^^^
[INFO] [stderr] error: member reference base type 'int*' is not a structure or union
[INFO] [stderr]  --> example.c:6:44
[INFO] [stderr]   |
[INFO] [stderr] 6 |             __builtin_offsetof(struct S, p.x);
[INFO] [stderr]   |                                            ^
[INFO] [stdout] test tests::semantic_parsed_declarator_coverage::test_nested_array_decay ... ok
[INFO] [stderr] <unknown>: Unexpected token: expected compatible type specifier, found unknown token
[INFO] [stdout] test tests::semantic_parsed_types_coverage::test_abstract_declarator_pointer ... ok
[INFO] [stdout] test tests::semantic_offsetof::test_offsetof_member_on_non_record_base ... ok
[INFO] [stdout] test tests::semantic_parsed_declarator_coverage::test_nested_array_valid ... ok
[INFO] [stdout] test tests::semantic_offsetof::test_offsetof_member_not_found ... ok
[INFO] [stdout] test tests::semantic_noreturn::test_noreturn_while_true ... ok
[INFO] [stdout] test tests::semantic_offsetof::test_offsetof_expected_array ... ok
[INFO] [stdout] test tests::semantic_parsed_declarator_coverage::test_array_qualifier_outside_parameter ... ok
[INFO] [stdout] test tests::semantic_parsed_types_coverage::test_abstract_declarators_more ... ok
[INFO] [stdout] test tests::semantic_nullptr::test_c23_nullptr ... ok
[INFO] [stdout] test tests::semantic_parsed_types_coverage::test_alignof_struct_expression ... ok
[INFO] [stdout] test tests::semantic_offsetof::test_offsetof_non_constant_index ... ok
[INFO] [stdout] test tests::semantic_offsetof::test_offsetof_member_on_pointer_with_dot ... ok
[INFO] [stdout] test tests::semantic_parsed_types_coverage::test_alignment_coverage ... ok
[INFO] [stdout] test tests::semantic_parsed_types_coverage::test_sizeof_struct_with_alignment_coverage ... ok
[INFO] [stdout] test tests::semantic_parsed_types_coverage::test_anonymous_record_declarator ... ok
[INFO] [stdout] test tests::semantic_parsed_types_coverage::test_default_to_int ... ok
[INFO] [stdout] test tests::semantic_parsed_types_coverage::test_bitfield_declarator ... ok
[INFO] [stdout] test tests::semantic_parsed_types_coverage::test_enum_evaluation_in_type_name ... ok
[INFO] [stderr] warning: missing '(' after '#pragma pack' [-W#pragmas]
[INFO] [stdout] test tests::semantic_parsed_types_coverage::test_enum_coverage ... ok
[INFO] [stderr]  --> example.c:2:22
[INFO] [stdout] test tests::semantic_pragma_pack::test_pragma_pack_basic ... ok
[INFO] [stderr]   |
[INFO] [stderr] 2 |         #pragma pack push
[INFO] [stderr]   |                      ^
[INFO] [stderr] warning: missing '(' after '#pragma pack' [-W#pragmas]
[INFO] [stderr]  --> example.c:4:22
[INFO] [stderr]   |
[INFO] [stderr] 4 |         #pragma pack push
[INFO] [stderr]   |                      ^
[INFO] [stdout] test tests::semantic_parsed_types_coverage::test_sizeof_struct_expression ... ok
[INFO] [stderr] <unknown>: Unexpected token: expected single type specifier, found unknown token
[INFO] [stdout] test tests::semantic_parsed_types_coverage::test_compound_literal_struct ... ok
[INFO] [stderr] error: Invalid operand for unary operation: have 'struct S'
[INFO] [stdout] test tests::semantic_pragma_pack::test_pragma_pack_missing_paren_warning ... ok
[INFO] [stderr]  --> example.c:5:13
[INFO] [stdout] test tests::semantic_parsed_types_coverage::test_builtin_types_coverage ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::semantic_pragma_pack::test_pragma_pack_empty ... ok
[INFO] [stderr] 5 |             __imag__ s;
[INFO] [stdout] test tests::semantic_pedantic_gnu_extensions::test_gnu_statement_expression_warning ... ok
[INFO] [stderr]   |             ^^^^^^^^^^
[INFO] [stdout] test tests::semantic_pragma_pack::test_pragma_pack_in_function ... ok
[INFO] [stdout] test tests::semantic_pragma_pack::test_pragma_pack_missing_paren_ignored ... ok
[INFO] [stdout] test tests::semantic_pragma_pack::test_pragma_pack_nested ... ok
[INFO] [stdout] test tests::semantic_pragma_pack::test_pragma_pack_alignas_interaction ... ok
[INFO] [stdout] test tests::semantic_regr_real_imag::test_imag_on_struct ... ok
[INFO] [stdout] test tests::semantic_pragma_pack::test_pragma_pack_various_values ... ok
[INFO] [stderr] <unknown>: Unexpected token: expected single type specifier, found unknown token
[INFO] [stdout] test tests::semantic_regr_real_imag::test_real_on_struct ... ok
[INFO] [stderr] warning: void function 'bar' should not return a value [-Wpedantic]
[INFO] [stdout] test tests::semantic_return::test_void_return_void_call ... ok
[INFO] [stderr]  --> example.c:4:20
[INFO] [stdout] test tests::semantic_return::test_void_return_int_call ... ok
[INFO] [stderr]   |
[INFO] [stderr] 4 |             return foo();
[INFO] [stderr]   |                    ^^^^^
[INFO] [stderr] error: Invalid operand for unary operation: have 'struct S'
[INFO] [stderr]  --> example.c:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |             __real__ s;
[INFO] [stderr]   |             ^^^^^^^^^^
[INFO] [stderr] error: void function 'bar' should not return a value
[INFO] [stderr]  --> example.c:4:20
[INFO] [stderr]   |
[INFO] [stderr] 4 |             return foo();
[INFO] [stderr]   |                    ^^^^^
[INFO] [stderr] error: type mismatch: expected void, found int
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             return foo();
[INFO] [stderr]   |             ^^^^^^^^^^^^^
[INFO] [stderr] <unknown>: Unexpected token: expected single type specifier, found unknown token
[INFO] [stdout] test tests::semantic_return_check::test_return_static_local_address_ok ... ok
[INFO] [stdout] test tests::semantic_pragma_pack::test_pragma_pack_push_pop ... ok
[INFO] [stdout] test tests::semantic_scope::allows_function_parameter_to_shadow_typedef ... ok
[INFO] [stdout] test tests::semantic_return_check::test_return_global_address_ok ... ok
[INFO] [stdout] test tests::semantic_scope::allows_compatible_typedef_redefinition ... ok
[INFO] [stderr] warning: address of stack memory associated with local variable 'x' returned [-Wreturn-stack-address]
[INFO] [stderr]  --> example.c:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 |     return &x;
[INFO] [stderr]   |     ^^^^^^^^^^
[INFO] [stderr] error: type mismatch: expected int, found struct (anonymous)
[INFO] [stderr]  --> example.c:7:9
[INFO] [stderr]   |
[INFO] [stderr] 7 |         return s;
[INFO] [stderr]   |         ^^^^^^^^^
[INFO] [stdout] test tests::semantic_parsed_types_coverage::test_type_mismatch_in_type_name ... ok
[INFO] [stderr] error: Invalid operand for unary operation: have 'void'
[INFO] [stdout] test tests::semantic_return_check::test_return_local_address ... ok
[INFO] [stderr]  --> example.c:4:13
[INFO] [stdout] test tests::semantic_return_check::test_return_struct_in_int_function ... ok
[INFO] [stderr]   |
[INFO] [stderr] 4 |             __imag__ foo();
[INFO] [stderr]   |             ^^^^^^^^^^^^^^
[INFO] [stderr] error: non-void function 'foo' should return a value
[INFO] [stderr]  --> example.c:3:9
[INFO] [stderr]   |
[INFO] [stderr] 3 |         return;
[INFO] [stderr]   |         ^^^^^^^
[INFO] [stderr] error: _Atomic(type-name) specifier cannot be used with function type 
[INFO] [stderr]  --> example.c:1:47
[INFO] [stderr]   |
[INFO] [stderr] 1 | int main() { int sz = sizeof(_Atomic(int(void))); return 0; }
[INFO] [stderr]   |                                               ^
[INFO] [stdout] test tests::semantic_scope::rejects_conflicting_typedef_redefinition ... ok
[INFO] [stdout] test tests::semantic_regr_real_imag::test_imag_on_void ... ok
[INFO] [stdout] test tests::semantic_scope::rejects_extern_variable_declaration_conflicting_with_typedef ... ok
[INFO] [stdout] test tests::semantic_scope::allows_typedef_and_struct_tag_with_same_name ... ok
[INFO] [stdout] test tests::semantic_parsed_types_coverage::test_complex_type_specs ... ok
[INFO] [stdout] test tests::semantic_return_check::test_return_missing_value ... ok
[INFO] [stdout] test tests::semantic_scope::rejects_variable_declaration_conflicting_with_typedef ... ok
[INFO] [stdout] test tests::semantic_scope::test_block_scope_static_shadowing_global_is_ok ... ok
[INFO] [stdout] test tests::semantic_scope::test_function_redefinition_with_prototype ... ok
[INFO] [stdout] test tests::semantic_scope::test_block_scope_extern_refers_to_global_static ... ok
[INFO] [stdout] test tests::semantic_scope::test_global_variable_alignment_mismatch ... ok
[INFO] [stdout] test tests::semantic_scope::test_file_scope_tentative_external_linkage_ok ... ok
[INFO] [stdout] test tests::semantic_scope::test_block_scope_enum_tag_declaration_shadowing ... ok
[INFO] [stderr] error: Invalid operand for unary operation: have 'int*'
[INFO] [stderr]  --> example.c:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |             __real__ p;
[INFO] [stderr]   |             ^^^^^^^^^^
[INFO] [stdout] test tests::semantic_scope::test_redefinition_function ... ok
[INFO] [stdout] test tests::semantic_scope::test_initialized_array_block_scope_ok ... ok
[INFO] [stdout] test tests::semantic_regr_real_imag::test_real_on_pointer ... ok
[INFO] [stdout] test tests::semantic_scope::test_global_variable_visible_in_its_own_initializer ... ok
[INFO] [stdout] test tests::semantic_scope::test_static_followed_by_plain_variable_ok ... ok
[INFO] [stdout] test tests::semantic_scope::test_typedef_redefinition_compatible_but_not_same ... ok
[INFO] [stdout] test tests::semantic_scope::test_static_followed_by_extern_function_ok ... ok
[INFO] [stdout] test tests::semantic_scope::test_typedef_redefinition_function_params_different_type_rejects ... ok
[INFO] [stdout] test tests::semantic_scope::rejects_typedef_declaration_conflicting_with_variable ... ok
[INFO] [stdout] test tests::semantic_scope::test_static_followed_by_extern_variable_ok ... ok
[INFO] [stdout] test tests::semantic_scope::test_extern_incomplete_array_ok ... ok
[INFO] [stdout] test tests::semantic_scope::test_typedef_visible_in_declarator ... ok
[INFO] [stdout] test tests::semantic_parsed_types_coverage::test_struct_parsing_coverage ... ok
[INFO] [stdout] test tests::semantic_scope::test_typedef_redefinition_using_same_tag_ok ... ok
[INFO] [stdout] test tests::semantic_scope::test_void_parameter_ok ... ok
[INFO] [stdout] test tests::semantic_scope::test_typedef_redefinition_function_params_ok ... ok
[INFO] [stdout] test tests::semantic_scope::test_typedef_redefinition_defines_new_struct ... ok
[INFO] [stdout] test tests::semantic_scope::test_variable_visible_in_its_own_initializer ... ok
[INFO] [stdout] test tests::semantic_scope::test_array_parameter_decay_ok ... ok
[INFO] [stderr] error: expression in static assertion is not constant
[INFO] [stderr]  --> example.c:2:9
[INFO] [stderr]   |
[INFO] [stderr] 2 |         _Static_assert((int)1e20, "should fail");
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: Unexpected token: expected ',' followed by a string literal, found )
[INFO] [stderr]  --> example.c:1:17
[INFO] [stderr]   |
[INFO] [stderr] 1 | _Static_assert(1);
[INFO] [stderr]   |                 ^
[INFO] [stdout] test tests::semantic_static_assert::static_assert_rejects_out_of_range_float ... ok
[INFO] [stderr] error: static assertion failed: 
[INFO] [stdout] test tests::semantic_scope::test_undeclared_variable ... ok
[INFO] [stderr]  --> example.c:1:1
[INFO] [stdout] test tests::semantic_scope::test_incomplete_type_in_prototype_ok ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::semantic_static_assert::test_static_assert_c23_fail_no_msg ... ok
[INFO] [stderr] 1 | _Static_assert(1 == 0);
[INFO] [stdout] test tests::semantic_static_assert::test_static_assert_c11_no_message_fails ... ok
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::semantic_static_assert::test_static_assert_c23_one_arg ... ok
[INFO] [stderr] error: type mismatch: expected int, found int*
[INFO] [stdout] test tests::semantic_return_check::test_return_pointer_as_int ... ok
[INFO] [stderr]  --> example.c:4:5
[INFO] [stdout] test tests::semantic_static_assert::test_static_assert_fail_with_msg ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::semantic_static_assert::test_static_assert_cast ... ok
[INFO] [stderr] 4 |     return &x;
[INFO] [stderr]   |     ^^^^^^^^^^
[INFO] [stderr] warning: address of stack memory associated with local variable 'x' returned [-Wreturn-stack-address]
[INFO] [stderr]  --> example.c:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 |     return &x;
[INFO] [stderr]   |     ^^^^^^^^^^
[INFO] [stderr] error: static assertion failed: failure message
[INFO] [stderr]  --> example.c:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | _Static_assert(1 == 0, "failure message");
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::semantic_static_assert::test_static_assert_comparison ... ok
[INFO] [stderr] error: type mismatch: expected int, found nullptr_t
[INFO] [stderr]  --> example.c:3:21
[INFO] [stderr]   |
[INFO] [stderr] 3 |             int x = nullptr;
[INFO] [stderr]   |                     ^^^^^^^
[INFO] [stdout] test tests::semantic_static_assert::test_static_assert_c11_keyword_fails ... ok
[INFO] [stderr] error: static assertion failed: This should fail
[INFO] [stdout] test tests::semantic_nullptr::test_c23_nullptr_invalid_conversions ... ok
[INFO] [stderr]  --> example.c:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | _Static_assert(0, "This should fail");
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::semantic_static_assert::test_static_assert_in_union ... ok
[INFO] [stdout] test tests::semantic_static_assert::test_static_assert_at_top_level ... ok
[INFO] [stdout] test tests::semantic_scope::test_block_scope_tag_declaration_shadowing ... ok
[INFO] [stderr] error: static assertion failed: 
[INFO] [stderr]  --> example.c:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | static_assert(0);
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: expression in static assertion is not constant
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             _Static_assert(x, "error");
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: type mismatch: expected integer type, found double
[INFO] [stderr]  --> example.c:2:24
[INFO] [stdout] test tests::semantic_static_assert::test_static_assert_in_struct ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::semantic_static_assert::test_static_assert_keyword ... ok
[INFO] [stderr] 2 |         _Static_assert(1.0, "should fail");
[INFO] [stderr]   |                        ^^^
[INFO] [stderr] error: expression in static assertion is not constant
[INFO] [stderr]  --> example.c:2:9
[INFO] [stderr]   |
[INFO] [stderr] 2 |         _Static_assert(1.0, "should fail");
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: type mismatch: expected integer type, found void*
[INFO] [stderr]  --> example.c:2:25
[INFO] [stderr]   |
[INFO] [stderr] 2 |         _Static_assert((void*)0, "should fail");
[INFO] [stderr]   |                         ^^^^^^^
[INFO] [stderr] error: expression in static assertion is not constant
[INFO] [stderr]  --> example.c:2:9
[INFO] [stderr]   |
[INFO] [stderr] 2 |         _Static_assert((int)(1.0 + 1.0), "should fail");
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: static assertion failed: should fail
[INFO] [stderr]  --> example.c:2:9
[INFO] [stderr]   |
[INFO] [stderr] 2 |         _Static_assert((void*)0, "should fail");
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::semantic_static_assert::test_static_assert_logical ... ok
[INFO] [stdout] test tests::semantic_static_assert::test_static_assert_keyword_fail_no_msg ... ok
[INFO] [stdout] test tests::semantic_static_assert::test_static_assert_negative_numbers ... ok
[INFO] [stdout] test tests::semantic_static_assert::test_static_assert_non_constant ... ok
[INFO] [stdout] test tests::semantic_static_assert::test_static_assert_float_logical_and_comparison ... ok
[INFO] [stdout] test tests::semantic_static_assert::test_static_assert_in_function ... ok
[INFO] [stdout] test tests::semantic_static_assert::test_static_assert_rejects_float_expression_in_cast ... ok
[INFO] [stdout] test tests::semantic_static_assert::test_static_assert_type_mismatch ... ok
[INFO] [stderr] error: function has incomplete return type
[INFO] [stderr]  --> example.c:3:9
[INFO] [stderr]   |
[INFO] [stderr] 3 |         struct S foo() {}
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::semantic_typeof::test_typeof_expr_unresolved ... ok
[INFO] [stdout] test tests::semantic_types::rejects_function_returning_incomplete_type ... ok
[INFO] [stderr] warning: assignment discards qualifiers from pointer target type (passing 'const int*' to 'int*') [-Wincompatible-pointer-types-discards-qualifiers]
[INFO] [stderr]  --> example.c:9:13
[INFO] [stderr]   |
[INFO] [stderr] 9 |             y2 = p; // this is just testing assignment
[INFO] [stderr]   |             ^^^^^^
[INFO] [stdout] test tests::semantic_typeof::test_typeof_function ... ok
[INFO] [stdout] test tests::semantic_typeof::test_typeof_comma_expr_compile ... ok
[INFO] [stderr] error: Invalid application of 'sizeof' to an incomplete type 'int[]'
[INFO] [stdout] test tests::semantic_typeof_unqual::test_typeof_unqual_pointer ... ok
[INFO] [stderr]  --> example.c:4:21
[INFO] [stdout] test tests::semantic_typeof_unqual::test_typeof_unqual_expr_compile ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::semantic_typeof::test_typeof_struct_member ... ok
[INFO] [stderr] 4 |             int x = sizeof(arr);
[INFO] [stderr]   |                     ^^^^^^^^^^
[INFO] [stdout] test tests::semantic_types::rejects_sizeof_on_incomplete_array ... ok
[INFO] [stderr] error: Unexpected token: expected Expected declarator or identifier after type specifier, found __func__
[INFO] [stderr]  --> example.c:1:16
[INFO] [stderr]   |
[INFO] [stderr] 1 | void f() { int __func__; }
[INFO] [stderr]   |                ^^^^^^^^
[INFO] [stdout] test tests::semantic_typeof::test_typeof_in_struct_member ... ok
[INFO] [stdout] test tests::semantic_typeof::test_typeof_type_compile ... ok
[INFO] [stdout] test tests::semantic_typeof_unqual::test_typeof_unqual_type_compile ... ok
[INFO] [stdout] test tests::semantic_types::test_anonymous_struct_initialization ... ok
[INFO] [stdout] test tests::semantic_typeof::test_typeof_sizeof_constant ... ok
[INFO] [stdout] test tests::semantic_types::test_conflicting_type_specifier_complex ... ok
[INFO] [stdout] test tests::semantic_types::test_forward_enum_param ... ok
[INFO] [stdout] test tests::semantic_types::test_anonymous_struct_member_access ... ok
[INFO] [stdout] test tests::semantic_types::test_conflicting_type_specifier ... ok
[INFO] [stdout] test tests::semantic_scope_invariants::test_function_scope_and_linkage_invariants ... ok
[INFO] [stdout] test tests::semantic_types::test_empty_declaration_in_function ... ok
[INFO] [stderr] error: function has incomplete return type
[INFO] [stdout] test tests::semantic_types::test_is_char_type_coverage ... ok
[INFO] [stderr]  --> example.c:3:9
[INFO] [stdout] test tests::semantic_types::test_is_value_fitting_coverage ... ok
[INFO] [stderr]   |
[INFO] [stdout] test tests::semantic_types::test_anonymous_union_member_access ... ok
[INFO] [stderr] 3 |         struct S foo(void) { struct S *s = 0; return *s; }
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] error: incomplete type 'struct S'
[INFO] [stderr]  --> example.c:3:54
[INFO] [stderr]   |
[INFO] [stderr] 3 |         struct S foo(void) { struct S *s = 0; return *s; }
[INFO] [stderr]   |                                                      ^^
[INFO] [stderr] error: Invalid application of 'sizeof' to an incomplete type 'struct S'
[INFO] [stderr]  --> example.c:4:21
[INFO] [stderr]   |
[INFO] [stderr] 4 |             int x = sizeof(struct S);
[INFO] [stderr]   |                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] test tests::semantic_types::test_anonymous_union_name_conflict ... ok
[INFO] [stdout] test tests::semantic_types::test_incomplete_type_in_definition_rejected ... ok
[INFO] [stdout] test tests::semantic_types::test_anonymous_struct_name_conflict ... ok
[INFO] [stdout] test tests::semantic_types::test_enum_unsigned_compatibility ... ok
[INFO] [stdout] test tests::semantic_types::test_incomplete_struct_in_declaration_accepted ... ok
[INFO] [stdout] test tests::semantic_types::test_incomplete_return_type_in_definition_rejected ... ok
[INFO] [stdout] test tests::semantic_types::rejects_sizeof_on_incomplete_struct ... ok
[INFO] [stdout] test tests::semantic_types::test_reconstruct_type ... ok
[INFO] [stdout] test tests::semantic_types::test_empty_declarations_multiple ... ok
[INFO] [stdout] test tests::semantic_types::test_typeref_encoding_inline_array ... ok
[INFO] [stdout] test tests::semantic_types::test_typeref_encoding_inline_ptr ... ok
[INFO] [stdout] test tests::semantic_types::test_forward_enum_return ... ok
[INFO] [stdout] test tests::semantic_types::test_to_unsigned ... ok
[INFO] [stdout] test tests::semantic_types::test_typeref_encoding_primitive ... ok
[INFO] [stdout] test tests::semantic_types::test_typeref_encoding_registry_array ... ok
[INFO] [stdout] test tests::semantic_types::test_typeref_encoding_registry_ptr ... ok
[INFO] [stdout] test tests::semantic_types::test_typeref_invalid_combinations ... ok
[INFO] [stdout] test tests::semantic_types::test_typeregistry_complex_type_canonicalization ... ok
[INFO] [stdout] test tests::semantic_types::test_typeregistry_display_builtins ... ok
[INFO] [stdout] test tests::semantic_types::test_typeregistry_inline_logic ... ok
[INFO] [stdout] test tests::semantic_types::test_signed_long ... ok
[INFO] [stdout] test tests::semantic_types::test_typeregistry_pointer_type_canonicalization ... ok
[INFO] [stdout] test tests::semantic_types::test_typedef_unsigned_long_comparison ... ok
[INFO] [stdout] test tests::semantic_types::test_typeregistry_array_logic ... ok
[INFO] [stdout] test tests::semantic_types::test_signed_char ... ok
[INFO] [stdout] test tests::semantic_types::test_large_hex_literal_comparison ... ok
[INFO] [stdout] test tests::semantic_types::test_pedantic_enum_forward_decl ... ok
[INFO] [stdout] test tests::semantic_types::test_unsigned_int ... ok
[INFO] [stderr] error: Invalid operand for unary operation: have 'int*'
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             +p;
[INFO] [stderr]   |             ^^
[INFO] [stderr] error: Invalid operand for unary operation: have 'struct S'
[INFO] [stderr]  --> example.c:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |             -s;
[INFO] [stderr]   |             ^^
[INFO] [stderr] error: Expression is not assignable (not an lvalue)
[INFO] [stderr]  --> example.c:4:15
[INFO] [stderr]   |
[INFO] [stderr] 4 |             ++arr;
[INFO] [stderr]   |               ^^^
[INFO] [stderr] error: Invalid operand for unary operation: have 'int[5]'
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             ++arr;
[INFO] [stderr]   |             ^^^^^
[INFO] [stderr] error: Expression is not assignable (not an lvalue)
[INFO] [stderr]  --> example.c:4:15
[INFO] [stderr]   |
[INFO] [stderr] 4 |             ++foo;
[INFO] [stderr]   |               ^^^
[INFO] [stdout] test tests::semantic_types::test_struct_copy_init ... ok
[INFO] [stdout] test tests::semantic_unary_coverage::test_unary_plus_on_pointer ... ok
[INFO] [stdout] test tests::semantic_unary_coverage::test_unary_minus_on_struct ... ok
[INFO] [stdout] test tests::semantic_types::test_signed_int ... ok
[INFO] [stdout] test tests::semantic_types::test_type_long_long ... ok
[INFO] [stdout] test tests::semantic_types_compatible::test_types_compatible_unresolved_typeof ... ok
[INFO] [stdout] test tests::semantic_unary_coverage::test_unary_plus_minus_on_qualified_int ... ok
[INFO] [stdout] test tests::semantic_validation::accepts_modulo_on_integer ... ok
[INFO] [stderr] error: Expression is not assignable (not an lvalue)
[INFO] [stdout] test tests::semantic_validation::rejects_conflicting_storage_classes ... ok
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             arr++;
[INFO] [stderr]   |             ^^^
[INFO] [stderr] error: Invalid operand for unary operation: have 'int[5]'
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             arr++;
[INFO] [stderr]   |             ^^^^^
[INFO] [stderr] error: Invalid operand for unary operation: have 'double'
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             ~x;
[INFO] [stderr]   |             ^^
[INFO] [stderr] error: type mismatch: expected scalar type, found struct A
[INFO] [stderr]  --> example.c:1:52
[INFO] [stderr]   |
[INFO] [stderr] 1 | struct A{int a; int b;}; int main(){struct A a; if(a){return 12;} return 3;}
[INFO] [stdout] test tests::semantic_validation::rejects_bitnot_on_non_integer ... ok
[INFO] [stderr]   |                                                    ^
[INFO] [stdout] test tests::semantic_validation::rejects_struct_in_if_condition ... ok
[INFO] [stderr] error: Invalid operands for binary operation: have 'double' and 'double'
[INFO] [stdout] test tests::semantic_validation::rejects_modulo_on_non_integer ... ok
[INFO] [stderr]  --> example.c:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |             x % y;
[INFO] [stderr]   |             ^
[INFO] [stderr] error: type mismatch: expected scalar type, found struct A
[INFO] [stderr]  --> example.c:1:55
[INFO] [stderr]   |
[INFO] [stderr] 1 | struct A{int a; int b;}; int main(){struct A a; while(a){return 12;} return 3;}
[INFO] [stderr]   |                                                       ^
[INFO] [stderr] error: Invalid operand for unary operation: have 'void()'
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             ++foo;
[INFO] [stderr]   |             ^^^^^
[INFO] [stderr] error: Expression is not assignable (not an lvalue)
[INFO] [stderr]  --> example.c:3:15
[INFO] [stderr]   |
[INFO] [stderr] 3 |             ++"crash";
[INFO] [stderr]   |               ^^^^^^^
[INFO] [stderr] error: Invalid operand for unary operation: have 'char[6]'
[INFO] [stderr]  --> example.c:3:13
[INFO] [stderr]   |
[INFO] [stderr] 3 |             ++"crash";
[INFO] [stderr]   |             ^^^^^^^^^
[INFO] [stderr] error: Unexpected token: expected ;, found 1
[INFO] [stderr]  --> example.c:4:22
[INFO] [stderr]   |
[INFO] [stderr] 4 |             (my_var) 1;
[INFO] [stderr]   |                      ^
[INFO] [stderr] error: Invalid operands for binary operation: have 'struct A' and 'struct A'
[INFO] [stderr]  --> example.c:1:61
[INFO] [stderr]   |
[INFO] [stderr] 1 | struct A{int a; int b;}; int main(){struct A a; struct A b; b *= a; return 3;}
[INFO] [stderr]   |                                                             ^
[INFO] [stderr] error: type mismatch: expected scalar type, found struct A
[INFO] [stderr]  --> example.c:1:54
[INFO] [stderr]   |
[INFO] [stderr] 1 | struct A{int a; int b;}; int main(){struct A a; for(;a;){return 12;} return 3;}
[INFO] [stderr]   |                                                      ^
[INFO] [stderr] error: type mismatch: expected scalar type, found struct A
[INFO] [stderr]  --> example.c:1:69
[INFO] [stderr]   |
[INFO] [stderr] 1 | struct A{int a; int b;}; int main(){struct A a; do{return 12;}while(a); return 3;}
[INFO] [stderr]   |                                                                     ^
[INFO] [stderr] error: Expression is not assignable (not an lvalue)
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             foo++;
[INFO] [stderr]   |             ^^^
[INFO] [stderr] error: Invalid operand for unary operation: have 'void()'
[INFO] [stderr]  --> example.c:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |             foo++;
[INFO] [stderr]   |             ^^^^^
[INFO] [stderr] error: Expression is not assignable (not an lvalue)
[INFO] [stderr]  --> example.c:3:13
[INFO] [stderr]   |
[INFO] [stderr] 3 |             "crash"++;
[INFO] [stderr]   |             ^^^^^^^
[INFO] [stderr] error: Invalid operand for unary operation: have 'char[6]'
[INFO] [stderr]  --> example.c:3:13
[INFO] [stderr]   |
[INFO] [stderr] 3 |             "crash"++;
[INFO] [stderr]   |             ^^^^^^^^^
[INFO] [stderr] error: Invalid operands for binary operation: have 'int*' and 'int*'
[INFO] [stderr]  --> example.c:1:28
[INFO] [stderr]   |
[INFO] [stderr] 1 | int main(){int *x; int *y; x+y;}
[INFO] [stderr]   |                            ^
[INFO] [stdout] test tests::semantic_validation::rejects_struct_in_while_condition ... ok
[INFO] [stderr] error: Invalid operands for binary operation: have 'struct A' and 'struct A'
[INFO] [stdout] test tests::semantic_validation::rejects_variable_as_typedef_in_cast ... ok
[INFO] [stderr]  --> example.c:1:61
[INFO] [stderr]   |
[INFO] [stderr] 1 | struct A{int a; int b;}; int main(){struct A a; struct A b; b || a; return 3;}
[INFO] [stdout] test tests::semantic_validation::rejects_struct_in_for_condition ... ok
[INFO] [stdout] test tests::semantic_parsed_types_coverage::test_sizeof_targeted_coverage ... ok
[INFO] [stdout] test tests::semantic_validation::rejects_struct_in_do_while_condition ... ok
[INFO] [stdout] test tests::semantic_init::test_unicode_string_init ... ok
[INFO] [stderr]   |                                                             ^
[INFO] [stdout] test tests::semantic_validation::rejects_struct_compound_assignment ... ok
[INFO] [stdout] test tests::semantic_validation::rejects_thread_local_on_function ... ok
[INFO] [stdout] test tests::semantic_unary_coverage::test_invalid_inc_dec_on_functions ... ok
[INFO] [stdout] test tests::semantic_unary_coverage::test_invalid_inc_dec_on_arrays ... ok
[INFO] [stdout] test tests::semantic_usual_arithmetic_conversions::test_usual_arithmetic_conversions ... ok
[INFO] [stdout] test tests::semantic_types::test_restrict_array_of_pointers ... ok
[INFO] [stdout] test tests::semantic_validation::rejects_pointer_plus_pointer ... ok
[INFO] [stdout] test tests::semantic_validation::rejects_struct_logical_or ... ok
[INFO] [stderr] error: Invalid operands for binary operation: have 'void*' and 'int'
[INFO] [stderr]  --> example.c:1:29
[INFO] [stderr]   |
[INFO] [stderr] 1 | int main(void){void *p = 0; p += 3;}
[INFO] [stderr]   |                             ^
[INFO] [stdout] test tests::semantic_validation::rejects_void_pointer_arithmetic ... ok
[INFO] [stdout] test tests::semantic_scope::allows_parameter_to_shadow_typedef ... ok
[INFO] [stdout] test tests::semantic_scope::test_nested_scope_shadowing ... ok
[INFO] [stdout] test tests::semantic_validation::test_struct_init_in_array_regression ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1504 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.99s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/cendol-a5022eef04e797c5)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests cendol
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "79c72986605594dd1824627be4bb2cd6281bbeb3dd225de33060c6d0e17f60a3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "79c72986605594dd1824627be4bb2cd6281bbeb3dd225de33060c6d0e17f60a3", kill_on_drop: false }`
[INFO] [stdout] 79c72986605594dd1824627be4bb2cd6281bbeb3dd225de33060c6d0e17f60a3
